亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

上傳內容時出現 Firebase 存儲錯誤(錯誤?)

上傳內容時出現 Firebase 存儲錯誤(錯誤?)

寶慕林4294392 2022-11-03 14:57:48
我創建了一個將照片上傳到我的存儲空間的功能。有時它工作正常,但在幾分鐘內我收到以下錯誤:Possible Unhandled Promise Rejection (id: 0):FirebaseStorageError {  "code_": "storage/unauthorized",  "message_": "Firebase Storage: User does not have permission to access 'photos/1d1be05f-b82d-4928-9a8e-002abc0d462e'.",  "name_": "FirebaseError",  "serverResponse_": "{  \"error\": {    \"code\": 403,    \"message\": \"Permission denied. Could not perform this operation\"  }}",}我正在使用 Expo,并使用此函數獲取本地 uri(用于創建 blob):export function urlToBlob(url) {  return new Promise((resolve, reject) => {    var xhr = new XMLHttpRequest();    xhr.onerror = reject;    xhr.onreadystatechange = () => {      if (xhr.readyState === 4) {        resolve(xhr.response);      }    };    xhr.open("GET", url);    xhr.responseType = "blob"; // convert type    xhr.send();  });} 我的存儲安全規則如下所示:rules_version = '2';service firebase.storage {  match /b/{bucket}/o {    function isSignedIn() {        return request.auth.uid != null;    }    match /photos/{photo} {            function hasValidSize() {        // Max. photo size = 30MB (For all dimensions)        return request.resource.size < 30 * 1024 * 1024;      }      function isImage() {            return request.resource.contentType.matches("image/.*");            }      allow read;      allow write: if isSignedIn() && isImage() && hasValidSize();    }  }}我認為錯誤就在這里,因為當我刪除 uploadTask.then 時工作正常。// 上傳到存儲 const uploadTask = storageRef.put(blob);uploadTask.on("state_changed", (taskSnapshot) => {  // Update progress bar  const percent =    (taskSnapshot.bytesTransferred / taskSnapshot.totalBytes) * 100;  setUploadProgress(percent);});// When the image is fully uploaded to the storage...    uploadTask.then(async () => {  // <------------------------- When I delete this...       ...         // Reset upload progress      setUploadProgress(null);    }); // <------------------------- ...and this, all works fine  };有任何想法嗎?更新當我更改存儲規則(刪除 isImage() 條件)時,它也適用于 uploadTask。
查看完整描述

1 回答

?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

我認為這是 Expo 錯誤,因為我從開發模式轉移到生產模式,一切正常!



查看完整回答
反對 回復 2022-11-03
  • 1 回答
  • 0 關注
  • 146 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號