จัดการข้อผิดพลาดสำหรับ Cloud Storage บนเว็บ

บางครั้งเมื่อคุณสร้างแอป สิ่งต่างๆ อาจไม่เป็นไปตามแผนและเกิดข้อผิดพลาดขึ้น

หากไม่แน่ใจ ให้ตรวจสอบตัวจัดการข้อผิดพลาด (หรือฟังก์ชัน catch() สำหรับ Promise) และดูว่าข้อความแสดงข้อผิดพลาดระบุว่าอย่างไร

หากคุณตรวจสอบข้อความแสดงข้อผิดพลาดแล้วและมี Cloud Storage Security Rules ที่อนุญาต การดำเนินการของคุณ แต่ยังคงพบปัญหาในการแก้ไขข้อผิดพลาด โปรดไปที่ หน้าการสนับสนุน และแจ้งให้เราทราบว่าเราจะช่วยคุณได้อย่างไร

จัดการข้อความแสดงข้อผิดพลาด

ข้อผิดพลาดอาจเกิดขึ้นได้จากหลายสาเหตุ เช่น ไม่มีไฟล์ ผู้ใช้ไม่มีสิทธิ์เข้าถึงไฟล์ที่ต้องการ หรือผู้ใช้ยกเลิกการอัปโหลดไฟล์

หากต้องการวิเคราะห์ปัญหาและจัดการข้อผิดพลาดอย่างเหมาะสม โปรดดูรายการข้อผิดพลาดทั้งหมดที่ไคลเอ็นต์จะแสดงและสาเหตุที่เกิดข้อผิดพลาด

รหัส เหตุผล
storage/unknown เกิดข้อผิดพลาดที่ไม่รู้จัก
storage/object-not-found ไม่มีออบเจ็กต์ในข้อมูลอ้างอิงที่ระบุ
storage/bucket-not-found ไม่มีการกำหนดค่า Bucket สำหรับ Cloud Storage
storage/project-not-found ไม่มีการกำหนดค่าโปรเจ็กต์สำหรับ Cloud Storage
storage/quota-exceeded คุณใช้โควต้าของ Bucket เกินแล้ว Cloud Storage for Firebase กำหนดให้ใช้แพ็กเกจราคา Blaze แบบจ่ายเมื่อใช้ หากคุณได้รับข้อผิดพลาดนี้ในโปรเจ็กต์ที่ใช้แพ็กเกจราคา Spark คุณต้องอัปเกรดเป็นแพ็กเกจราคา Blaze เพื่อกลับมาเข้าถึงได้อีกครั้ง ดูรายละเอียดได้ที่คำถามที่พบบ่อย
storage/unauthenticated ผู้ใช้ไม่ได้รับการตรวจสอบสิทธิ์ โปรดตรวจสอบสิทธิ์แล้วลองอีกครั้ง
storage/unauthorized ผู้ใช้ไม่มีสิทธิ์ดำเนินการที่ขอ โปรดตรวจสอบ กฎความปลอดภัยเพื่อให้แน่ใจว่ากฎถูกต้อง
storage/retry-limit-exceeded คุณใช้เวลาเกินขีดจำกัดสูงสุดในการดำเนินการ (อัปโหลด ดาวน์โหลด ลบ ฯลฯ) แล้ว โปรดลองอัปโหลดอีกครั้ง
storage/invalid-checksum ไฟล์ในไคลเอ็นต์ไม่ตรงกับ Checksum ของไฟล์ที่เซิร์ฟเวอร์ได้รับ โปรดลองอัปโหลดอีกครั้ง
storage/canceled ผู้ใช้ยกเลิกการดำเนินการ
storage/invalid-event-name ชื่อเหตุการณ์ที่ระบุไม่ถูกต้อง ต้องเป็นหนึ่งใน [`running`, `progress`, `pause`]
storage/invalid-url URL ที่ระบุใน refFromURL() ไม่ถูกต้อง ต้องอยู่ในรูปแบบ: gs://bucket/object หรือ https://firebasestorage.googleapis.com/v0/b/bucket/o/object?token=&ltTOKEN>
storage/invalid-argument อาร์กิวเมนต์ที่ส่งไปยัง put() ต้องเป็น `File`, `Blob` หรือ`UInt8` Array. อาร์กิวเมนต์ที่ส่งไปยัง putString() ต้องเป็น สตริงแบบดิบ, `Base64` หรือ `Base64URL`
storage/no-default-bucket ไม่มีการตั้งค่า Bucket ในพร็อพเพอร์ตี้ storageBucket ของการกำหนดค่า Firebase
storage/cannot-slice-blob มักเกิดขึ้นเมื่อไฟล์ในเครื่องมีการเปลี่ยนแปลง (ลบ บันทึกอีกครั้ง ฯลฯ) โปรดลองอัปโหลดอีกครั้งหลังจากตรวจสอบว่าไฟล์ไม่มีการเปลี่ยนแปลง
storage/server-file-wrong-size ไฟล์ในไคลเอ็นต์ไม่ตรงกับขนาดของไฟล์ที่เซิร์ฟเวอร์ได้รับ โปรดลองอัปโหลดอีกครั้ง