การจัดการข้อผิดพลาด

นักพัฒนาซอฟต์แวร์ในเขตเศรษฐกิจยุโรป (EEA)

หลังจากส่งคำขอแล้ว คุณอาจได้รับการตอบกลับที่มีรายละเอียดข้อผิดพลาด

ชิ้นส่วนแผนที่ 2 มิติและภาพ Street View

รายการต่อไปนี้แสดงรายละเอียดข้อผิดพลาดที่คุณอาจพบเมื่อใช้ภาพชิ้นส่วนแผนที่ 2 มิติและภาพ Street View

ข้อผิดพลาดในการแสดงข้อมูล

รายการต่อไปนี้แสดงรายละเอียดข้อผิดพลาดที่คุณอาจพบเมื่อใช้ Map Tiles API

required
คำขอของคุณไม่มีพารามิเตอร์ของ URL โปรดทราบว่าข้อความแสดงข้อผิดพลาดจะระบุว่าพารามิเตอร์ใดขาดหายไป
notFound, invalid

ค่า x, y หรือ z อยู่นอกช่วง

  • สำหรับชิ้นส่วนแผนที่ปกติ ระดับการซูมสูงสุดจะขึ้นอยู่กับชิ้นส่วนแผนที่นั้นๆ และตัวเลือกแผนที่ที่คุณขอ

  • สำหรับไทล์แผนที่ปกติ พิกัด x ต้องอยู่ในช่วง [0, (2^zoom)-1]

  • สำหรับไทล์แผนที่ปกติ พิกัด y ต้องอยู่ในช่วง [0, (2^(zoom-1))-1]

  • สำหรับการซูมชิ้นส่วนแผนที่ Street View ต้องอยู่ระหว่าง 0 ถึง 5 เท่านั้น

  • สำหรับชิ้นส่วนแผนที่ Street View ช่วงพิกัด x และ y จะเหมือนกับชิ้นส่วนแผนที่ปกติจนถึงการซูมระดับ 5 ณ จุดนั้น ค่าสูงสุดคือ imageHeight หรือ imagewidth หารด้วย tileHeight หรือ tileWidth

forbidden:

สาเหตุที่เป็นไปได้:

  • คำขอไม่มีคีย์ API ที่ถูกต้อง

  • ข้อความ: Your request cannot be served. Please ensure the parameters and request type are valid for your account and region.

    ไทล์ดาวเทียม 2 มิติไม่พร้อมใช้งานในโปรเจ็กต์ที่ลิงก์กับบัญชีสำหรับการเรียกเก็บเงินที่มีที่อยู่ในเขตเศรษฐกิจยุโรป (EEA) ดูข้อมูลเพิ่มเติมได้ที่การปรับเปลี่ยน Map Tiles API สำหรับลูกค้าใน EEA

expired
โทเค็น session ของคุณหมดอายุแล้ว โทเค็นของเซสชันจะมีอายุ 2 สัปดาห์นับจากเวลาที่สร้าง โปรดทราบว่าข้อมูลนี้อาจมีการเปลี่ยนแปลงโดยไม่ต้องแจ้งให้ทราบล่วงหน้า หากได้รับข้อผิดพลาดนี้ คุณต้องรับโทเค็นของเซสชันใหม่ตามที่อธิบายไว้ในใช้โทเค็นของเซสชัน
badRequest

รูปแบบคำขอไม่ถูกต้อง โดยสาเหตุที่พบบ่อยมีดังนี้

  • คุณระบุประเภทแผนที่ terrain โดยไม่รวมเลเยอร์ roadmap

  • คุณรวมอาร์เรย์ styles สำหรับประเภทแผนที่ที่ไม่ใช่แผนที่ถนน

  • คุณส่งค่าละติจูด/ลองจิจูด รวมถึงรหัสภาพพาโนรามาในคำขอข้อมูลเมตาของ Street View

quotaExceeded, rateLimitExceeded

แอปพลิเคชันของคุณใช้โควต้าเกินจำนวนที่อนุญาต หรือใช้จำนวนคำค้นหาต่อวินาทีเกินจำนวนที่อนุญาต

ตัวอย่างข้อผิดพลาด

{
  "error": {
    "code": 403,
    "message": "The request is missing a valid API key.",
    "errors": [
      {
        "message": "The request is missing a valid API key.",
        "domain": "global",
        "reason": "forbidden"
      }
    ],
    "status": "PERMISSION_DENIED"
  }
}

กำลังลองส่งคำขออีกครั้ง

เมื่อคำขอล้มเหลวด้วย quotaExceeded และ rateLimitExceeded คุณควรลองส่งคำขออีกครั้งในลักษณะที่คำขอที่เสียหายหรือความล้มเหลวในวงกว้างจะไม่ทำให้เซิร์ฟเวอร์ Google ทำงานหนักเกินไป เนื่องจากไคลเอ็นต์จำนวนมากพยายามส่งคำขออีกครั้งติดต่อกันอย่างรวดเร็ว ซึ่งหมายถึงการใช้ Exponential Backoff เมื่อลองส่งคำขออีกครั้ง Exponential Backoff จะบังคับให้คุณกระจายคำขอออกไปตามเวลา เพื่อให้เซิร์ฟเวอร์มีเวลาในการกู้คืน

เช่น หากคำขอล้มเหลว ให้ลองอีกครั้งหลังจากผ่านไป 1 วินาที แต่หากการพยายามครั้งนั้นไม่สำเร็จด้วย ให้ลองส่งคำขออีกครั้งหลังจากผ่านไป 2 วินาที หากคำขอดังกล่าวล้มเหลวอีก ให้ลองอีกครั้งหลังจากผ่านไป 4 วินาที ดังนั้นคุณจึงกระจายคำขอที่ต่อเนื่องกันแต่ละรายการได้อย่างมีประสิทธิภาพโดยเพียงแค่เพิ่มระยะเวลาระหว่างคำขอเป็น 2 เท่า

ชิ้นส่วน 3 มิติ

ข้อผิดพลาดจากเซิร์ฟเวอร์ของ Google อาจไม่ชัดเจนสำหรับคุณเนื่องจากคุณเข้าถึงการ์ดภาพเสมือนจริงผ่านโปรแกรมแสดงผล ซึ่งมีหน้าที่จัดการข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์

ข้อผิดพลาดของโปรแกรมแสดงผลไทล์

ตัวอย่างเช่น โดยปกติแล้วโปรแกรมแสดงผล CesiumJS จะไม่แสดงข้อผิดพลาดเมื่อเกิดข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์ ซึ่งอาจส่งผลให้เกิดปัญหาต่างๆ ตั้งแต่ข้อขัดข้อง หน้าจอว่างเปล่า ไปจนถึงการ์ดบางรายการไม่โหลด

เทคนิคที่คุณใช้ในการแก้ไขข้อบกพร่องของข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์จะขึ้นอยู่กับโปรแกรมแสดงผลที่คุณใช้ สำหรับโปรแกรมแสดงผลบนเบราว์เซอร์ เช่น CesiumJS คุณสามารถตรวจสอบการจราจรของข้อมูลในเครือข่ายด้วยเครื่องมือที่มาพร้อมกับเบราว์เซอร์ส่วนใหญ่ เช่น คุณสามารถใช้เครื่องมือสำหรับนักพัฒนาเว็บใน Chrome

ข้อผิดพลาดที่พบบ่อย

รายการต่อไปนี้มีรายละเอียดเกี่ยวกับข้อผิดพลาดที่พบบ่อยที่สุดที่คุณอาจพบ

400: อาร์กิวเมนต์ไม่ถูกต้อง
คีย์ API, พารามิเตอร์การค้นหา, รหัสไทล์/ชุดไทล์ หรือโทเค็นของเซสชันที่หมดอายุไม่ถูกต้อง
400: ค่าไม่ถูกต้อง
ตรวจสอบว่า mapType ที่ใช้ในคำขอ createSessionToken ตรงกับ mapType ที่ใช้ในปลายทางไทล์ที่ตามมา เช่น โทเค็นของเซสชัน streetview ไม่สามารถใช้เพื่อขอการ์ด roadmap ได้

403: สิทธิ์ถูกปฏิเสธ

สาเหตุที่เป็นไปได้:

  • ไม่มีคีย์ API, ไม่มีการเชื่อมต่อ SSL หรือไม่ได้เพิ่มคีย์ API ลงในรายการที่อนุญาตสำหรับ 3D Tiles ติดต่อทีมสนับสนุนของ Google พร้อมรหัสโปรเจ็กต์เพื่อเพิ่มลงในรายการที่อนุญาตสำหรับฟังก์ชันการทำงานของไทล์ 3 มิติของ Map Tiles API

  • ข้อความ: Your request cannot be served. Please ensure the parameters and request type are valid for your account and region.

    ชิ้นส่วนแผนที่ 3 มิติแบบสมจริงไม่พร้อมใช้งานในโปรเจ็กต์ที่ลิงก์กับบัญชีสำหรับการเรียกเก็บเงินที่มีที่อยู่ในเขตเศรษฐกิจยุโรป (EEA) ดูข้อมูลเพิ่มเติมได้ที่การปรับเปลี่ยน Map Tiles API สำหรับลูกค้าใน EEA

429: มีคำขอมากเกินไป
โควต้าของคุณหมดแล้ว ติดต่อทีมสนับสนุนของ Google เพื่อเพิ่มโควต้า