แคตตาล็อกข้อผิดพลาดรันไทม์

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X
info

ข้อผิดพลาดใน Apigee Edge

เมื่อมีการส่งคำขอ API ผ่าน Apigee Edge คอมโพเนนต์ Apigee Edge อย่างเราเตอร์และตัวประมวลผลข้อความ หรือเซิร์ฟเวอร์แบ็กเอนด์ สามารถส่งข้อผิดพลาดกลับไปยังแอปพลิเคชันไคลเอ็นต์ได้

ข้อผิดพลาดจาก Message Processor

Message Processor เป็นคอมโพเนนต์หลักของ Apigee Edge ที่ประมวลผลนโยบายและ โต้ตอบกับเซิร์ฟเวอร์แบ็กเอนด์ โดยอาจแสดงข้อผิดพลาดหากตรวจพบปัญหา เช่น

  • ปัญหาการเชื่อมต่อเครือข่าย, แฮนด์เชค TLS ไม่สำเร็จ, เซิร์ฟเวอร์แบ็กเอนด์ไม่พร้อมใช้งาน ไม่มีการตอบสนองระหว่างการสื่อสารกับเซิร์ฟเวอร์แบ็กเอนด์
  • ความล้มเหลวระหว่างการดำเนินการตามนโยบาย
  • ส่วนหัว HTTP, การเข้ารหัส, เส้นทางที่ไม่ถูกต้อง, ไม่ปฏิบัติตามข้อกำหนด HTTP, เกิน ขีดจำกัดของผลิตภัณฑ์ ฯลฯ
    • ด้วยคำขอ HTTP ที่ส่งโดยแอปพลิเคชันไคลเอ็นต์
    • หรือ

    • พร้อมการตอบกลับ HTTP ที่ส่งโดยเซิร์ฟเวอร์แบ็กเอนด์
  • และอีกมากมาย

ตัวอย่างข้อผิดพลาดจากเครื่องมือประมวลผลข้อความ

Message Processor จะแสดงรหัสสถานะ HTTP ตามด้วยข้อความแสดงข้อผิดพลาดพร้อมกับรหัสข้อผิดพลาดในรูปแบบ JSON เสมอ ดังที่แสดงด้านล่าง

แอปพลิเคชันไคลเอ็นต์จะได้รับรหัสการตอบกลับดังตัวอย่างต่อไปนี้

HTTP/1.1 414 Request-URI Too Long

การตอบกลับข้อผิดพลาดจาก Message Processor จะปรากฏในรูปแบบต่อไปนี้

{
   "fault":{
      "faultstring":"request line size exceeding 7,168",
      "detail":{
         "errorcode":"protocol.http.TooBigLine"
      }
   }
}

คำอธิบายของช่องในการตอบกลับข้อผิดพลาด:

ช่อง คำอธิบาย
faultstring มีข้อความแสดงข้อผิดพลาดที่อธิบายสาเหตุที่เป็นไปได้ของข้อผิดพลาด
errorcode รหัสข้อผิดพลาด (หรือที่เรียกว่ารหัสข้อบกพร่อง) ที่เกี่ยวข้องกับ ข้อผิดพลาด

แคตตาล็อกข้อผิดพลาดเกี่ยวกับรันไทม์

แคตตาล็อกข้อผิดพลาดนี้ให้ข้อมูลทั้งหมดที่คุณจำเป็นต้องทราบเกี่ยวกับรหัสข้อผิดพลาด รันไทม์ (สำหรับข้อผิดพลาดที่ไม่ใช่ข้อผิดพลาดเกี่ยวกับนโยบาย) ที่คอมโพเนนต์ Message Processor ของ Apigee Edge แสดง ซึ่งรวมถึงข้อมูลต่อไปนี้สำหรับรหัสข้อผิดพลาดแต่ละรายการ

  • รหัสสถานะ HTTP
  • ข้อความแสดงข้อผิดพลาด
  • สาเหตุที่เป็นไปได้ของข้อผิดพลาด
  • ข้อกำหนด HTTP และ/หรือขีดจำกัดของผลิตภัณฑ์ที่เกี่ยวข้อง
  • Playbook และวิดีโอที่มีวิธีการวินิจฉัยสาเหตุของข้อผิดพลาดและ วิธีแก้ปัญหาที่มีประสิทธิภาพซึ่งคุณสามารถนำไปใช้เพื่อแก้ไขข้อผิดพลาดด้วยตนเอง (หากมี)
  • การแก้ไขที่คุณใช้เพื่อแก้ไขข้อผิดพลาดด้วยตนเองได้

หมวดหมู่รหัสข้อผิดพลาดต่อไปนี้จะครอบคลุม

ใช้ช่องค้นหาด้านล่างเพื่อกรองตารางให้แสดงข้อมูลข้างต้น สำหรับรหัสข้อผิดพลาดที่เฉพาะเจาะจง คุณค้นหารหัสสถานะหรือเนื้อหาใดก็ได้ในฟิลด์ใดก็ได้ ในตาราง

รหัสข้อผิดพลาด คำอธิบาย แก้ไข

flow.*

flow.APITimedOut

  • รหัสสถานะ HTTP:
504 Gateway Timeout
  • ข้อความแสดงข้อผิดพลาด:
API timed out
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นในกรณีต่อไปนี้

  • เซิร์ฟเวอร์แบ็กเอนด์ไม่ตอบกลับภายในระยะหมดเวลาที่กำหนดค่า โดยพร็อพเพอร์ตี้ api.timeout สำหรับพร็อกซี API ที่เฉพาะเจาะจง
  • นโยบายใช้เวลานานเนื่องจากการดำเนินการที่ต้องใช้การคำนวณอย่างหนัก มีภาระงานสูง หรือประสิทธิภาพต่ำ

หมายเหตุ: Playbook นี้มีวิธีการแก้ปัญหารหัสข้อผิดพลาด messaging.adaptors.http.flow.GatewayTimeout แต่คุณสามารถใช้ Playbook เดียวกันเพื่อแก้ปัญหารหัสข้อผิดพลาด flow.APITimedOut ได้

PLAYBOOK

flow.SharedFlowNotFound

  • รหัสสถานะ HTTP:
500 Internal Server Error
  • ข้อความแสดงข้อผิดพลาด:
Shared Flow {shared_flow_name} Not Found
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นหากโฟลว์ที่แชร์ที่เฉพาะเจาะจงมีลักษณะดังนี้

  • ไม่มี
  • หรือ

  • มีอยู่แต่ไม่ได้ใช้งาน
PLAYBOOK

messaging.adaptors.http.flow

messaging.adaptors.http.flow.ApplicationNotFound

  • รหัสสถานะ HTTP:
404 Not Found
  • ข้อความแสดงข้อผิดพลาด:
Unable to identify proxy for host: {virtual_host} and url: {pathsuffix}
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นในกรณีใดกรณีหนึ่งต่อไปนี้

  1. พร็อกซี API ที่เฉพาะเจาะจงคือ
    1. ไม่ได้กำหนดค่าให้ยอมรับคำขอใน โฮสต์เสมือนที่เฉพาะเจาะจง
    2. ไม่ได้กำหนดค่าให้ยอมรับคำขอในเส้นทางที่เฉพาะเจาะจง ที่ใช้ในคำขอ
    3. ไม่ได้ติดตั้งใช้งานในสภาพแวดล้อมที่เฉพาะเจาะจงซึ่งคุณ พยายามส่งคำขอ API
    4. ไม่ได้ติดตั้งใช้งานในตัวประมวลผลข้อความอย่างน้อย 1 รายการ
  2. ระบบไม่ได้โหลดสภาพแวดล้อมที่เฉพาะเจาะจงซึ่งคุณพยายามส่งคำขอ API ในตัวประมวลผลข้อความอย่างน้อย 1 รายการ
PLAYBOOK
ข้อผิดพลาดนี้ยังอาจเกิดขึ้นได้หากโฮสต์เสมือนหลายรายการมีนามแฝงโฮสต์และหมายเลขพอร์ตเดียวกัน PLAYBOOK

messaging.adaptors.http.flow.DecompressionFailureAtRequest

  • รหัสสถานะ HTTP:
400 Bad Request
  • ข้อความแสดงข้อผิดพลาด:
Decompression failure at request
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นในกรณีต่อไปนี้เท่านั้น

  • การเข้ารหัสที่ระบุในส่วนหัวคำขอ HTTP Content-Encoding ใช้ได้และ รองรับโดย Apigee Edge
  • BUT

  • รูปแบบเพย์โหลดที่ไคลเอ็นต์ส่งเป็นส่วนหนึ่งของคำขอ HTTP ไม่ตรงกับรูปแบบการเข้ารหัสที่ระบุในส่วนหัว Content-Encoding
PLAYBOOK

messaging.adaptors.http.flow.DecompressionFailureAtResponse

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Decompression failure at response
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นในกรณีต่อไปนี้เท่านั้น

  • การเข้ารหัสที่ระบุในส่วนหัวการตอบกลับ HTTP Content-Encoding ของแบ็กเอนด์/เซิร์ฟเวอร์เป้าหมาย ถูกต้องและ ได้รับการรองรับโดย Apigee Edge
  • BUT

  • รูปแบบเพย์โหลดที่แบ็กเอนด์/เซิร์ฟเวอร์เป้าหมายส่งเป็นส่วนหนึ่งของการตอบกลับ HTTP ไม่ตรงกับรูปแบบการเข้ารหัสที่ระบุไว้ในส่วนหัว Content-Encoding
PLAYBOOK

messaging.adaptors.http.flow.ErrorResponseCode

  • รหัสสถานะ HTTP:
500

PLAYBOOK

วิดีโอ

  • ข้อความแสดงข้อผิดพลาด:
ข้อความแสดงข้อผิดพลาดและรูปแบบอาจแตกต่างกันไปตามการติดตั้งใช้งานเซิร์ฟเวอร์แบ็กเอนด์
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากเซิร์ฟเวอร์แบ็กเอนด์ตอบกลับ Apigee Edge ด้วยรหัสสถานะ 500
  • รหัสสถานะ HTTP:
503

PLAYBOOK

วิดีโอ

  • ข้อความแสดงข้อผิดพลาด:
ข้อความแสดงข้อผิดพลาดและรูปแบบอาจแตกต่างกันไปตามการติดตั้งใช้งานเซิร์ฟเวอร์แบ็กเอนด์
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากเซิร์ฟเวอร์แบ็กเอนด์ตอบกลับ Apigee Edge ด้วยรหัสสถานะ 503
  • รหัสสถานะ HTTP:
504 PLAYBOOK
  • ข้อความแสดงข้อผิดพลาด:
ข้อความแสดงข้อผิดพลาดและรูปแบบอาจแตกต่างกันไปตามการติดตั้งใช้งานเซิร์ฟเวอร์แบ็กเอนด์
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากเซิร์ฟเวอร์แบ็กเอนด์ตอบกลับ Apigee Edge ด้วยรหัสสถานะ 504

หมายเหตุ: ระบบจะไม่แสดงรหัสข้อผิดพลาด messaging.adaptors.http.flow.ErrorResponseCode เป็นส่วนหนึ่งของข้อความแสดงข้อผิดพลาดที่ส่งไปยังแอปพลิเคชันไคลเอ็นต์ เนื่องจาก Apigee Edge จะตั้งรหัสข้อผิดพลาดนี้เมื่อใดก็ตามที่เซิร์ฟเวอร์แบ็กเอนด์ตอบกลับด้วยข้อผิดพลาดและรหัสสถานะ 4XX หรือ 5XX คุณดูรหัสข้อผิดพลาดนี้ได้ในการตรวจสอบ API, บันทึกการเข้าถึง NGINX หรือฐานข้อมูลการวิเคราะห์

messaging.adaptors.http.flow.GatewayTimeout

  • รหัสสถานะ HTTP:
504 Gateway Timeout
  • ข้อความแสดงข้อผิดพลาด:
Gateway Timeout
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากเซิร์ฟเวอร์แบ็กเอนด์ไม่ตอบกลับ ไปยัง Message Processor ของ Apigee Edge ภายใน ระยะหมดเวลา I/O ที่กำหนดค่าไว้ใน Message Processor
PLAYBOOK

messaging.adaptors.http.flow.LengthRequired

  • รหัสสถานะ HTTP:
411 Length Required
  • ข้อความแสดงข้อผิดพลาด:
'Content-Length' is missing
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นหากแอปพลิเคชันไคลเอ็นต์ไม่ได้ส่งส่วนหัว Content-Length เป็นส่วนหนึ่งของคำขอ HTTP POST และ PUT ที่ส่งไปยัง Apigee Edge

หมายเหตุ: คำขอที่ไม่สำเร็จเนื่องจากข้อผิดพลาดนี้จะไม่สามารถบันทึกในเครื่องมือติดตามได้ เนื่องจากตัวประมวลผลข้อความจะทำการตรวจสอบนี้ในระยะแรกๆ ก่อนที่จะประมวลผลคำขอและเรียกใช้นโยบายใดๆ ในพร็อกซี API

  • ข้อกำหนด HTTP:
ส่วนที่ 3.3.2 ของ RFC: Content-Length

แก้ไข

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้ทำตามขั้นตอนต่อไปนี้

  1. ตรวจสอบว่าแอปพลิเคชันไคลเอ็นต์ส่งส่วนหัว Content-Length เป็นส่วนหนึ่งของคำขอ HTTP POST และ PUT ที่ส่งไปยัง Apigee Edge เสมอ เช่น

    curl -X POST https://HOSTALIAS/PATH -d '{"name": "abc"}' -H "Content-Length: 15"
    
  2. แม้ว่าคุณจะส่งเพย์โหลดที่ว่างเปล่าพร้อมคำขอ POST และ PUT แต่ให้ตรวจสอบว่าได้ส่งส่วนหัว Content-Length: 0 แล้ว เช่น

    curl -X POST https://HOSTALIAS/PATH -H "Content-Length: 0"
    

messaging.adaptors.http.flow.NoActiveTargets

  • รหัสสถานะ HTTP:
503 Service Unavailable
  • ข้อความแสดงข้อผิดพลาด:
The Service is temporarily unavailable
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นในสถานการณ์ใดสถานการณ์หนึ่งต่อไปนี้ หากคุณใช้ TargetServer ใน Apigee Edge

  1. การแปล DNS ที่ไม่ถูกต้องของโฮสต์เซิร์ฟเวอร์แบ็กเอนด์ โดยเซิร์ฟเวอร์การให้สิทธิ์ที่กำหนดเองส่งผลให้ที่อยู่ IP ไม่ถูกต้อง ซึ่งนำไปสู่ ข้อผิดพลาดในการเชื่อมต่อ
  2. ข้อผิดพลาดการหมดเวลาการเชื่อมต่อเนื่องจาก
    1. การจำกัดไฟร์วอลล์ในเซิร์ฟเวอร์แบ็กเอนด์ทำให้ Apigee Edge เชื่อมต่อกับเซิร์ฟเวอร์แบ็กเอนด์ไม่ได้
    2. ปัญหาการเชื่อมต่อเครือข่ายระหว่าง Apigee Edge กับเซิร์ฟเวอร์แบ็กเอนด์
  3. โฮสต์ที่ระบุใน TargetServer ไม่ถูกต้องหรือ มีอักขระที่ไม่ต้องการ (เช่น ช่องว่าง)

PLAYBOOK

วิดีโอ

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

PLAYBOOK

วิดีโอ

messaging.adaptors.http.flow.RequestTimeOut

  • รหัสสถานะ HTTP:
408 Request Timeout
  • ข้อความแสดงข้อผิดพลาด:
Request timed out
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหาก Message Processor ของ Apigee Edge ไม่ได้รับ เพย์โหลดคำขอจากแอปพลิเคชันไคลเอ็นต์สำหรับ ระยะหมดเวลา I/O ที่กำหนดค่าไว้ในคอมโพเนนต์ Message Processor

แก้ไข

ตรวจสอบว่าแอปพลิเคชันไคลเอ็นต์ส่งเพย์โหลดคำขอภายใน ระยะหมดเวลา I/O ที่กำหนดค่าไว้ในคอมโพเนนต์ Message Processor ของ Apigee Edge

messaging.adaptors.http.flow.ServiceUnavailable

  • รหัสสถานะ HTTP:
503 Service Unavailable
  • ข้อความแสดงข้อผิดพลาด:
The Service is temporarily unavailable
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นในกรณีใดกรณีหนึ่งต่อไปนี้

  1. การแปล DNS ที่ไม่ถูกต้องของโฮสต์เซิร์ฟเวอร์แบ็กเอนด์ โดยเซิร์ฟเวอร์การให้สิทธิ์ที่กำหนดเองส่งผลให้ที่อยู่ IP ไม่ถูกต้อง ซึ่งนำไปสู่ ข้อผิดพลาดในการเชื่อมต่อ
  2. ข้อผิดพลาดการหมดเวลาการเชื่อมต่อเนื่องจาก
    1. การจำกัดไฟร์วอลล์ในเซิร์ฟเวอร์แบ็กเอนด์ทำให้ Apigee Edge เชื่อมต่อกับเซิร์ฟเวอร์แบ็กเอนด์ไม่ได้
    2. ปัญหาการเชื่อมต่อเครือข่ายระหว่าง Apigee Edge กับเซิร์ฟเวอร์แบ็กเอนด์
  3. โฮสต์เซิร์ฟเวอร์เป้าหมายที่ระบุในปลายทางเป้าหมายไม่ถูกต้อง หรือมีอักขระที่ไม่ต้องการ (เช่น ช่องว่าง)

PLAYBOOK

DNS Lookup ไม่ประสบความสำเร็จ:

วิดีโอ

การเชื่อมต่อเครือข่าย

วิดีโอ

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

messaging.adaptors.http.flow.SslHandshakeFailed

  • รหัสสถานะ HTTP:
503 Service Unavailable
  • ข้อความแสดงข้อผิดพลาด:
SSL Handshake failed {error_message}
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นในระหว่างกระบวนการแฮนด์เชค SSL ระหว่าง Message Processor ของ Apigee Edge และเซิร์ฟเวอร์แบ็กเอนด์ในกรณีต่อไปนี้

  1. ที่เก็บใบรับรองที่เชื่อถือได้ของ Message Processor ของ Apigee Edge
    • มีเชนใบรับรองที่ไม่ตรงกับเชนใบรับรองที่สมบูรณ์ของเซิร์ฟเวอร์แบ็กเอนด์
    • หรือ

    • ไม่มีเชนใบรับรองที่สมบูรณ์ของเซิร์ฟเวอร์แบ็กเอนด์
  2. เชนใบรับรองที่เซิร์ฟเวอร์แบ็กเอนด์แสดง
    • มีชื่อโดเมนที่สมบูรณ์ในตัวเอง (FQDN) ซึ่งไม่ตรงกับ ชื่อโฮสต์ที่ระบุในปลายทางเป้าหมาย
    • หรือ

    • มีชุดใบรับรองที่ไม่ถูกต้อง/ไม่สมบูรณ์

PLAYBOOK

วิดีโอ

messaging.adaptors.http.flow.UnexpectedEOFAtTarget

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Unexpected EOF at target
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นในกรณีใดกรณีหนึ่งต่อไปนี้

  1. ไม่ได้กำหนดค่า TargetServer อย่างถูกต้องเพื่อรองรับการเชื่อมต่อ TLS/SSL ใน Apigee Edge
  2. เซิร์ฟเวอร์แบ็กเอนด์อาจปิดการเชื่อมต่ออย่างกะทันหัน ขณะที่ Apigee Edge กำลังรอการตอบกลับจากเซิร์ฟเวอร์แบ็กเอนด์
  3. กำหนดค่าการหมดเวลา Keep-Alive ไม่ถูกต้องใน Apigee และ เซิร์ฟเวอร์แบ็กเอนด์
PLAYBOOK

messaging.runtime.*

messaging.runtime.RouteFailed

  • รหัสสถานะ HTTP:
500 Internal Server Error
  • ข้อความแสดงข้อผิดพลาด:
Unable to route the message to a TargetEndpoint
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นหาก Apigee Edge ไม่สามารถกำหนดเส้นทางคำขอไปยัง TargetEndpoint ใดๆ ได้เนื่องจากสาเหตุต่อไปนี้

  • ไม่มีเงื่อนไขกฎเส้นทาง (<RouteRule>) ที่ ตรงกับคำขอในพร็อกซี
  • และ

  • ไม่มีกฎเส้นทางเริ่มต้นที่กำหนดไว้ใน ProxyEndpoint (เช่น <RouteRule> โดยไม่มีเงื่อนไข)

แก้ไข

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้ทำตามวิธีการต่อไปนี้

  1. ตรวจสอบกฎเส้นทางที่กำหนดไว้ใน ProxyEndpoint และแก้ไขเพื่อให้แน่ใจว่า มีเงื่อนไขกฎเส้นทางอย่างน้อย 1 รายการที่ตรงกับคำขอของคุณ
  2. คุณควรกำหนดกฎการกำหนดเส้นทางเริ่มต้นที่ไม่มีเงื่อนไข เมื่อมี RouteRule หลายรายการ
  3. ตรวจสอบว่ากฎเส้นทางเริ่มต้นจะกำหนดเป็นกฎสุดท้ายในรายการ เส้นทางแบบมีเงื่อนไขเสมอ เนื่องจากระบบจะประเมินกฎจากบนลงล่างใน ProxyEndpoint

ดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนด<RouteRule>เงื่อนไขใน ProxyEndpoint ได้ที่ เป้าหมายแบบมีเงื่อนไข

messaging.runtime.SenseRaiseFault

  • รหัสสถานะ HTTP:
403 Forbidden
  • ข้อความแสดงข้อผิดพลาด:
Sense Fault
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้จะเกิดขึ้นหากมีการส่งคำขอ API จากที่อยู่ IP ของไคลเอ็นต์หนึ่งๆ ซึ่งถูกบล็อกเป็นส่วนหนึ่งของกฎ Apigee Sense

แก้ไข

หากต้องการแก้ไขข้อผิดพลาดนี้ ให้ทำตามวิธีการต่อไปนี้

  1. ตรวจสอบว่าคุณได้บล็อกที่อยู่ IP ของไคลเอ็นต์ที่เฉพาะเจาะจงโดย ตรวจสอบกฎที่กำหนดค่าใน Apigee Sense หากถูกบล็อก แสดงว่าทำงานได้ตามที่ออกแบบไว้
  2. หากไม่ได้บล็อกที่อยู่ IP ของไคลเอ็นต์ที่เฉพาะเจาะจง แต่คุณยังคง ได้รับข้อผิดพลาดนี้ โปรดติดต่อทีมสนับสนุนของ Apigee Edge

protocol.http.* - Caused due to bad request

protocol.http.BadFormData

  • รหัสสถานะ HTTP:
500 Internal Server Error
  • ข้อความแสดงข้อผิดพลาด:
Bad Form Data
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้จะเกิดขึ้นก็ต่อเมื่อเป็นไปตามเงื่อนไขต่อไปนี้ทั้งหมดเท่านั้น

  1. คำขอ HTTP ที่ไคลเอ็นต์ส่งไปยัง Apigee Edge มีข้อมูลต่อไปนี้
    • Content-Type: application/x-www-form-urlencoded และ
    • ข้อมูลแบบฟอร์มที่มีเครื่องหมายเปอร์เซ็นต์ (%) หรือเครื่องหมายเปอร์เซ็นต์ (%) ตามด้วยอักขระฐานสิบหกที่ไม่ถูกต้องซึ่งไม่อนุญาต ตามที่ระบุไว้ใน แบบฟอร์ม - ส่วนที่ 17.13.4.1
  2. พร็อกซี API ใน Apigee Edge จะอ่านพารามิเตอร์ของแบบฟอร์มที่เฉพาะเจาะจง ซึ่งมีอักขระใดๆ ที่ไม่อนุญาตโดยใช้ นโยบาย ExtractVariables หรือ AssignMessage ในโฟลว์คำขอ
PLAYBOOK

protocol.http.DuplicateHeader

  • รหัสสถานะ HTTP:
400 Bad Request
  • ข้อความแสดงข้อผิดพลาด:
Duplicate Header "{header_name}"
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากส่วนหัว HTTP ที่เฉพาะเจาะจงซึ่งไม่อนุญาตให้มีรายการที่ซ้ำกัน ใน Apigee Edge ปรากฏมากกว่า 1 ครั้งโดยมีค่าเดียวกันหรือค่าที่แตกต่างกันเป็นส่วนหนึ่งของ คำขอ HTTP ที่แอปพลิเคชันไคลเอ็นต์ส่งไปยัง Apigee Edge
  • ข้อกำหนด HTTP:
RFC 7230, ส่วน 3.2.2: ลำดับฟิลด์
PLAYBOOK

protocol.http.EmptyHeaderName

  • รหัสสถานะ HTTP:
400 Bad Request
  • ข้อความแสดงข้อผิดพลาด:
Header name cannot be empty
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อส่วนหัวที่ส่งเป็นส่วนหนึ่งของคำขอ HTTP โดยแอปพลิเคชันไคลเอ็นต์ไปยัง Apigee Edge ว่างเปล่า
  • ข้อกำหนด HTTP:
RFC 7230 ส่วนที่ 3.2: ฟิลด์ส่วนหัว

แก้ไข

ตรวจสอบว่าคำขอ HTTP ที่แอปพลิเคชันไคลเอ็นต์ส่งไปยัง Apigee Edge มีชื่อส่วนหัวที่ถูกต้องเสมอตาม RFC 7230 ส่วน 3.2: ฟิลด์ส่วนหัว

protocol.http.HeaderNameWithNonAsciiChar

  • รหัสสถานะ HTTP:
400 Bad Request
  • ข้อความแสดงข้อผิดพลาด:
Header {header_name} contains non ascii character {character}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อส่วนหัวที่ส่งเป็นส่วนหนึ่งของคำขอ HTTP โดยแอปพลิเคชันไคลเอ็นต์ไปยัง Apigee Edge มีอักขระที่ไม่ใช่ ASCII
  • ข้อกำหนด HTTP:

RFC 7230, ส่วนที่ 3.2: ฟิลด์ส่วนหัว และ RFC 7230, ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

แก้ไข

ตรวจสอบว่าคำขอ HTTP ของไคลเอ็นต์ที่ส่งไปยัง Apigee Edge ไม่มีอักขระที่ไม่ใช่ ASCII ในชื่อส่วนหัวตามที่ระบุใน RFC 7230, ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

protocol.http.HeaderWithInvalidChar

  • รหัสสถานะ HTTP:
400 Bad Request
  • ข้อความแสดงข้อผิดพลาด:
Header {header_name} contains invalid character {character}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อส่วนหัวที่ส่งเป็นส่วนหนึ่งของคำขอ HTTP โดยแอปพลิเคชันไคลเอ็นต์ไปยัง Apigee Edge มีอักขระที่ไม่ถูกต้อง เช่น เครื่องหมายเท่ากับ (=) คอมมา (,) เซมิโคลอน (;), แท็บ, CRLF และอักขระขึ้นบรรทัดใหม่
  • ข้อกำหนด HTTP:

RFC 7230, ส่วนที่ 3.2: ฟิลด์ส่วนหัว และ RFC 7230, ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

แก้ไข

ตรวจสอบว่าคำขอ HTTP ที่แอปพลิเคชันไคลเอ็นต์ส่งไปยัง Apigee Edge ไม่มีอักขระที่ไม่ถูกต้องในชื่อส่วนหัวตามที่ระบุใน RFC 7230 ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

protocol.http.InvalidPath

  • รหัสสถานะ HTTP:
400 Bad Request
  • ข้อความแสดงข้อผิดพลาด:
Invalid path {path}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากเส้นทางใน URL ของคำขอ HTTP ที่แอปพลิเคชันไคลเอ็นต์ส่ง ไปยัง Apigee Edge มีอักขระที่ไม่ได้รับอนุญาตตามข้อกำหนด RFC 3986 ส่วนที่ 3.3: เส้นทาง
  • ข้อกำหนด HTTP:

RFC 3986 ส่วนที่ 3: องค์ประกอบไวยากรณ์ และ RFC 3986 ส่วนที่ 3.3: เส้นทาง

แก้ไข

ตรวจสอบว่าเส้นทางใน URL ของคำขอ HTTP ที่แอปพลิเคชันไคลเอ็นต์ส่งไปยัง Apigee Edge ไม่มีอักขระใดๆ ที่ไม่ได้รับอนุญาตตาม RFC 3986 ส่วนที่ 3.3: เส้นทาง

protocol.http.MessageReadError

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Unexpected I/O after message headers have been read.
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดที่พบได้ยากนี้เกิดขึ้นเมื่อ MP ได้รับ I/O ในแชแนลเมื่อไม่คาดคิด MP กำลังอ่านคำขอ อ่านส่วนหัวทั้งหมดแล้ว และตั้งค่า เพื่ออ่านเพย์โหลดของคำขอ จากนั้นก็พบเหตุการณ์ I/O ซึ่งดูเหมือนว่าจะเป็นส่วนหัวเดียวกัน

แก้ไข

ค้นหาข้อความบันทึกเพื่อดูข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่เกิดขึ้น

logger.atSevere().log(
    "Unexpected I/O after message headers have been read. Channel diagnostics=%s."
        + " HeartBeat=%s",
    input.client().getDiagnostic(), message.getHeaders().isHeartBeat());
                

protocol.http.TooBigBody

  • รหัสสถานะ HTTP:
413 Request Entity Too Large
  • ข้อความแสดงข้อผิดพลาด:
Body buffer overflow
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากขนาดเพย์โหลดที่แอปพลิเคชันไคลเอ็นต์ส่งเป็นส่วนหนึ่งของ คำขอ HTTP ไปยัง Apigee Edge มีขนาดใหญ่กว่าขีดจำกัดที่อนุญาตใน Apigee Edge
  • ขีดจำกัด:
ข้อจำกัดของ Apigee Edge
PLAYBOOK

protocol.http.TooBigHeaders

  • รหัสสถานะ HTTP:
431 Request Header Fields Too Large
  • ข้อความแสดงข้อผิดพลาด:
request headers size exceeding {limit}
  • สาเหตุที่เป็นไปได้
ขนาดรวมของส่วนหัวคำขอทั้งหมดที่แอปพลิเคชันไคลเอ็นต์ส่งเป็นส่วนหนึ่งของคำขอ HTTP ไปยัง Apigee Edge มากกว่าขีดจำกัดที่อนุญาตใน Apigee Edge
  • ข้อกำหนด HTTP:
RFC 6585, ส่วนที่ 5: 431 ช่องส่วนหัวของคำขอใหญ่เกินไป
  • ขีดจำกัด:
ข้อจำกัดของ Apigee Edge
PLAYBOOK

protocol.http.TooBigLine

  • รหัสสถานะ HTTP:
414 Request-URI Too Long
  • ข้อความแสดงข้อผิดพลาด:
request line size exceeding {limit}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากขนาดของบรรทัดคำขอที่แอปพลิเคชันไคลเอ็นต์ส่ง เป็นส่วนหนึ่งของคำขอ HTTP ไปยัง Apigee Edge มีค่ามากกว่าขีดจำกัดที่อนุญาตใน Apigee Edge
  • ขีดจำกัด:
ข้อจำกัดของ Apigee Edge
PLAYBOOK

protocol.http.UnsupportedEncoding

  • รหัสสถานะ HTTP:
415 Unsupported Media
  • ข้อความแสดงข้อผิดพลาด:
Unsupported Encoding "{encoding}"
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากส่วนหัว Content-Encoding ที่ไคลเอ็นต์ส่ง เป็นส่วนหนึ่งของการตอบกลับ HTTP มีรูปแบบการเข้ารหัส/เพย์โหลดที่ Apigee Edge ไม่รองรับ
  • ข้อกำหนด HTTP:
RFC 7231, ส่วน 6.5.13: 415 ไม่รองรับประเภทสื่อ
PLAYBOOK

protocol.http.* - Caused by target

protocol.http.BadPath

  • รหัสสถานะ HTTP:
500 Internal Server Error
  • ข้อความแสดงข้อผิดพลาด:
Invalid request path
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหาก URL ของคำขอของเซิร์ฟเวอร์แบ็กเอนด์ ซึ่งแสดงโดยตัวแปรโฟลว์ target.url มีเส้นทางที่ขึ้นต้นด้วยเครื่องหมายคำถาม (?) แทนที่จะเป็นเครื่องหมายทับ (/ ซึ่งไม่ถูกต้อง
  • ข้อกำหนด HTTP:

RFC 3986 ส่วนที่ 3: องค์ประกอบไวยากรณ์ และ RFC 3986 ส่วนที่ 3.3: เส้นทาง

PLAYBOOK

protocol.http.DuplicateHeader

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Duplicate Header "{header_name}"
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากส่วนหัว HTTP ที่เฉพาะเจาะจงซึ่งไม่อนุญาตให้มีรายการที่ซ้ำกัน ใน Apigee Edge ปรากฏมากกว่า 1 ครั้งโดยมีค่าเดียวกันหรือค่าที่แตกต่างกันเป็นส่วนหนึ่งของ การตอบกลับ HTTP ที่เซิร์ฟเวอร์แบ็กเอนด์ส่งไปยัง Apigee Edge
  • ข้อกำหนด HTTP:
RFC 7230, ส่วน 3.2.2: ลำดับฟิลด์
PLAYBOOK

protocol.http.EmptyHeaderName

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Header name cannot be empty
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อส่วนหัวที่เซิร์ฟเวอร์แบ็กเอนด์ส่งเป็นส่วนหนึ่งของการตอบกลับ HTTP ไปยัง Apigee Edge ว่างเปล่า
  • ข้อกำหนด HTTP:
RFC 7230 ส่วนที่ 3.2: ฟิลด์ส่วนหัว

แก้ไข

ตรวจสอบว่าการตอบกลับ HTTP ที่เซิร์ฟเวอร์แบ็กเอนด์ส่งไปยัง Apigee Edge มีชื่อส่วนหัวที่ถูกต้องเสมอตาม RFC 7230 ส่วนที่ 3.2: ฟิลด์ส่วนหัว

protocol.http.EmptyPath

  • รหัสสถานะ HTTP:
500 Internal Server Error
  • ข้อความแสดงข้อผิดพลาด:
Request path cannot be empty
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหาก URL ของคำขอ HTTP ของเซิร์ฟเวอร์แบ็กเอนด์ ซึ่งแสดงโดยตัวแปรโฟลว์ target.url มีเส้นทางว่าง
  • ข้อกำหนด HTTP:

RFC 3986 ส่วนที่ 3: องค์ประกอบไวยากรณ์ และ RFC 3986 ส่วนที่ 3.3: เส้นทาง

PLAYBOOK

protocol.http.HeaderNameWithNonAsciiChar

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Header {header_name} contains non ascii character {character}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อส่วนหัวที่เซิร์ฟเวอร์แบ็กเอนด์ส่งเป็นส่วนหนึ่งของ การตอบกลับ HTTP ไปยัง Apigee Edge มีอักขระที่ไม่ใช่ ASCII
  • ข้อกำหนด HTTP:

RFC 7230, ส่วนที่ 3.2: ฟิลด์ส่วนหัว และ RFC 7230, ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

แก้ไข

ตรวจสอบว่าการตอบกลับ HTTP ของเซิร์ฟเวอร์แบ็กเอนด์ที่ส่งไปยัง Apigee Edge ไม่มีอักขระที่ไม่ใช่ ASCII ในชื่อส่วนหัวตามที่ระบุใน RFC 7230 ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

protocol.http.HeaderWithInvalidChar

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Header {header_name} contains invalid character {character}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากชื่อส่วนหัวที่เซิร์ฟเวอร์แบ็กเอนด์ส่งเป็นส่วนหนึ่งของการตอบกลับ HTTP มีอักขระที่ไม่ถูกต้อง เช่น เครื่องหมายเท่ากับ (=) คอมมา (,) เซมิโคลอน (;), แท็บ CRLF และอักขระขึ้นบรรทัดใหม่
  • ข้อกำหนด HTTP:

RFC 7230, ส่วนที่ 3.2: ฟิลด์ส่วนหัว และ RFC 7230, ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

แก้ไข

ตรวจสอบว่าการตอบกลับ HTTP ของเซิร์ฟเวอร์แบ็กเอนด์ที่ส่งไปยัง Apigee Edge ไม่มีอักขระที่ไม่ถูกต้องในชื่อส่วนหัวตาม RFC 7230 ส่วนที่ 3.2.6: คอมโพเนนต์ค่าฟิลด์

protocol.http.ProxyTunnelCreationFailed

  • รหัสสถานะ HTTP:
503 Service Unavailable
  • ข้อความแสดงข้อผิดพลาด:
Proxy refused to create tunnel with response status {status code}
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นระหว่างที่พร็อกซีเซิร์ฟเวอร์สร้างอุโมงค์ระหว่าง Apigee Edge กับเซิร์ฟเวอร์แบ็กเอนด์เนื่องจากไฟร์วอลล์, ACL (รายการควบคุมการเข้าถึง), ปัญหาเกี่ยวกับ DNS, ความพร้อมใช้งานของเซิร์ฟเวอร์แบ็กเอนด์ ฯลฯ

หมายเหตุ: รหัสสถานะในข้อความแสดงข้อผิดพลาด (faultstring) จะระบุสาเหตุระดับสูงของปัญหา

PLAYBOOK

protocol.http.Response306Reserved

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Response Status code 306 is reserved, so can't be used.
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นหากเซิร์ฟเวอร์แบ็กเอนด์ตอบกลับด้วยรหัสสถานะ 306 ไปยัง Apigee Edge

รหัสสถานะ 306 ได้รับการกำหนดไว้ในข้อกำหนด HTTP เวอร์ชันก่อนหน้า ตามข้อกำหนด HTTP ปัจจุบัน รหัสนี้เป็นรหัสที่สงวนไว้และไม่ควรใช้

  • ข้อกำหนด HTTP:
RFC 7231, ส่วนที่ 6.3.5: 306 Reserved

แก้ไข

เนื่องจากมีการสงวนรหัสสถานะ 306 ไว้ โปรดตรวจสอบว่าเซิร์ฟเวอร์แบ็กเอนด์ไม่ได้ใช้รหัสสถานะนี้ขณะส่งการตอบกลับไปยัง Apigee Edge

protocol.http.Response405WithoutAllowHeader

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Received 405 Response without Allow Header
  • สาเหตุที่เป็นไปได้
เซิร์ฟเวอร์แบ็กเอนด์ตอบกลับด้วยรหัสสถานะ 405 Method Not Allowed โดยไม่มีส่วนหัว "Allow"
  • ข้อกำหนด HTTP:

RFC 7231, ส่วนที่ 6.5.5: 405 ไม่อนุญาตให้ใช้วิธีการและ RFC 7231, ส่วนที่ 7.4.1: อนุญาต

PLAYBOOK

protocol.http.ResponseWithBody

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Received {status_code} Response with message body
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นหากการตอบกลับ HTTP จากเซิร์ฟเวอร์แบ็กเอนด์ไปยัง Apigee Edge เป็น 204 No Content หรือ 205 Reset Content แต่มีการตอบกลับเนื้อหาและ/หรือส่วนหัวต่อไปนี้อย่างน้อย 1 รายการ

  • Content-Length
  • Content-Encoding
  • Transfer-Encoding
  • ข้อกำหนด HTTP:

RFC 7231 ส่วนที่ 6.3.5: 204 ไม่มีเนื้อหา และ RFC 7231 ส่วนที่ 6.3.6: 205 รีเซ็ตเนื้อหา

PLAYBOOK

protocol.http.TooBigBody

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
Body buffer overflow
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากขนาดเพย์โหลดที่แอปพลิเคชันไคลเอ็นต์ส่งเป็นส่วนหนึ่งของ คำขอ HTTP ไปยัง Apigee Edge มีขนาดใหญ่กว่าขีดจำกัดที่อนุญาตใน Apigee Edge
  • ขีดจำกัด:
ข้อจำกัดของ Apigee Edge
PLAYBOOK

protocol.http.TooBigHeaders

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
response headers size exceeding {limit}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากขนาดรวมของส่วนหัวการตอบกลับทั้งหมดที่เซิร์ฟเวอร์แบ็กเอนด์ส่งเป็นส่วนหนึ่งของการตอบกลับ HTTP ไปยัง Apigee Edge มีค่ามากกว่าขีดจำกัดที่อนุญาตใน Apigee Edge
  • ขีดจำกัด:
ข้อจำกัดของ Apigee Edge
PLAYBOOK

protocol.http.TooBigLine

  • รหัสสถานะ HTTP:
502 Bad Gateway
  • ข้อความแสดงข้อผิดพลาด:
response line size exceeding {limit}
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากขนาดของบรรทัดการตอบกลับที่เซิร์ฟเวอร์แบ็กเอนด์ส่งเป็น ส่วนหนึ่งของการตอบกลับ HTTP ไปยัง Apigee Edge มีขนาดใหญ่กว่าขีดจำกัดที่อนุญาตใน Apigee Edge
  • ขีดจำกัด:
ข้อจำกัดของ Apigee Edge
PLAYBOOK

protocol.http.UnsupportedEncoding

  • รหัสสถานะ HTTP:
415 Unsupported Media
  • ข้อความแสดงข้อผิดพลาด:
Unsupported Encoding "{encoding}"
  • สาเหตุที่เป็นไปได้
ข้อผิดพลาดนี้เกิดขึ้นหากส่วนหัว Content-Encoding ที่เซิร์ฟเวอร์แบ็กเอนด์ส่งเป็นส่วนหนึ่งของการตอบกลับ HTTP มีรูปแบบการเข้ารหัส/เพย์โหลดที่ Apigee Edge ไม่รองรับ
  • ข้อกำหนด HTTP:
RFC 7231, ส่วน 6.5.13: 415 ไม่รองรับประเภทสื่อ
PLAYBOOK

security.util.*

security.util.KeyAliasNotFound

  • รหัสสถานะ HTTP:
500 Internal Server Error
  • ข้อความแสดงข้อผิดพลาด:
KeyAlias {KeyAlias_name} is not found in Keystore {Keystore_Name}
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นหากไม่พบ KeyAlias ที่เฉพาะเจาะจงซึ่งอ้างอิงใน TargetEndpoint หรือ TargetServer ใน Keystore ที่เฉพาะเจาะจง

แก้ไข

ตรวจสอบว่า KeyAlias ที่ระบุใน TargetEndpoint หรือ TargetServer มีอยู่และเป็นส่วนหนึ่งของ Keystore ที่เฉพาะเจาะจง

security.util.TrustStoreWithNoCertificates

  • รหัสสถานะ HTTP:
500 Internal Server Error
  • ข้อความแสดงข้อผิดพลาด:
TrustStore {truststore_name} has no certificates
  • สาเหตุที่เป็นไปได้

ข้อผิดพลาดนี้เกิดขึ้นหาก Truststore ที่เฉพาะเจาะจงซึ่งอ้างอิงใน TargetEndpoint หรือ TargetServer ไม่มีใบรับรอง

แก้ไข

หากต้องการตรวจสอบใบรับรองของเซิร์ฟเวอร์แบ็กเอนด์และ ต้องการใช้ Truststore ใน TargetEndpoint หรือ TargetServer ให้ ตรวจสอบว่า Truststore มีใบรับรองที่ถูกต้องของเซิร์ฟเวอร์แบ็กเอนด์