การแก้ปัญหา

ปัญหาที่พบบ่อยที่สุดและวิธีแก้ไข

คอมเมนต์ในโค้ดและชื่อ API ยังคงเป็นภาษาอังกฤษเพื่อให้ตรงกับ SDK

ในหน้านี้

การเชื่อมต่อ#

not_configured / NotConfigured

Unity: เปิด Tools ▸ Majacloud ▸ Setup แล้วบันทึก ไฟล์ asset ต้องอยู่ที่ Assets/Resources/MajacloudSettings.asset ส่วน Godot: กรอกค่าใน Project Settings ▸ Majacloud และเว็บ: ส่ง baseUrl, projectId และ clientKey

https_required (HTTP 426)

เฉพาะ localhost เท่านั้นที่ใช้ http:// ได้ ให้ใช้ HTTPS หรือเฉพาะระหว่างพัฒนา ให้ตั้ง ALLOW_INSECURE_HTTP ใน config.local.php

ทุกคำขอล้มเหลวในเบราว์เซอร์หรือบน WebGL

ให้บริการเกมผ่าน HTTPS ด้วย เพราะเบราว์เซอร์จะบล็อกการเรียก http:// จากหน้า https:// และ API ส่งเฮดเดอร์ CORS ให้อยู่แล้ว

ค้นหาคำขอที่ล้มเหลว

ทุกข้อผิดพลาดมีรหัสคำขอ ค้นหารหัสนี้ในหน้าล็อกของโปรเจกต์

การเข้าสู่ระบบ#

ได้ unauthorized ทุกครั้งที่เรียก

ตรวจสอบ Project ID และคีย์ไคลเอนต์ในหน้าคีย์ API หากคุณสร้างคีย์ไคลเอนต์ใหม่ บิลด์เก่าจะใช้งานไม่ได้

ผู้เล่นถูกออกจากระบบโดยไม่คาดคิด

เซสชันที่ไม่ได้ใช้งาน 30 วันจะหมดอายุ หากเกมสองชุดใช้เซสชันเดียวกันและต่างก็รีเฟรช ระบบป้องกันการใช้ซ้ำจะออกจากระบบเซสชันนั้น ให้ SDK เพียงอินสแตนซ์เดียวเป็นเจ้าของเซสชัน

หน้าเชื่อมบัญชีไม่เปิดขึ้นมา

เบราว์เซอร์จะบล็อกแท็บที่ไม่ได้เปิดจากการคลิก ให้เริ่มการเชื่อมบัญชีจากตัวจัดการการคลิกปุ่ม

รีโมตคอนฟิก#

signature_invalid / SignatureInvalid

คีย์สาธารณะที่เก็บไว้ไม่ตรงกับเซิร์ฟเวอร์ มักเกิดหลังย้ายไปเซิร์ฟเวอร์ใหม่หรือ storage/keys/ สูญหาย ให้เรียก Test connection อีกครั้ง (หรืออัปเดต configPublicKey) แล้วออกอัปเดตเกม

การเปลี่ยนคอนฟิกไม่แสดงผล

SDK ดึงคอนฟิกตอนเริ่มเกม ให้เรียก fetch อีกครั้ง (เช่น เมื่อกลับไปที่เมนู) เพื่อรับการเปลี่ยนแปลงระหว่างเซสชัน

ขีดจำกัด#

plan_limit

ถึงขีดจำกัดของแพ็กเกจแล้ว ไม่มีข้อมูลใดถูกลบ ให้อัปเกรดหรือลบรายการที่ไม่ใช้ในแดชบอร์ด

rate_limited / quota_exceeded

รอตามจำนวนวินาทีใน Retry-After หลีกเลี่ยงการดึงข้อมูลใน Update() หรือในลูปของเกม ให้แคชผลลัพธ์ไว้แทน

Godot และเว็บ#

Godot: Identifier "Majacloud" not declared

เปิดใช้ปลั๊กอินที่ Project Settings ▸ Plugins ซึ่งจะเพิ่ม autoload ให้ และตรวจสอบว่าโฟลเดอร์อยู่ที่ res://addons/majacloud ตรงทุกตัวอักษร

Godot: TLS handshake failed

ใบรับรอง HTTPS ของเซิร์ฟเวอร์ไม่น่าเชื่อถือ (มักเป็นใบรับรองแบบ self-signed) ให้ใช้ใบรับรองจากผู้ออกใบรับรองสาธารณะ เช่น Let's Encrypt

เว็บ: "Web Crypto is unavailable"

หน้าเว็บให้บริการผ่าน HTTP ธรรมดาจากโฮสต์อื่น ให้บริการผ่าน HTTPS แทน (ระหว่างพัฒนาใช้ localhost ได้)

ค้นหาจากชื่อหน้า หัวข้อ และเนื้อหา

↑↓ เพื่อเลื่อน ↵ เพื่อเปิด Esc เพื่อปิด