การแก้ปัญหาข้อผิดพลาดในการทำให้นโยบาย XML เป็น JSON ใช้งานได้

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

EitherOptionOrFormat

ข้อความแสดงข้อผิดพลาด

การติดตั้งใช้งานพร็อกซี API ผ่าน UI ของ Edge หรือ Edge Management API ล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดนี้

Error Saving Revision [revision_number]
XMLToJSON[{0}]: Either Options or Format must be specified.

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

Error Saving Revision 1
XMLToJSON[{0}]: Either Options or Format must be specified.

ภาพหน้าจอตัวอย่าง

สาเหตุ

หากไม่ได้ประกาศองค์ประกอบ <Options> หรือ <Format> อย่างใดอย่างหนึ่งในนโยบาย XML เป็น JSON การติดตั้งใช้งานพร็อกซี API จะล้มเหลว

ต้องระบุ <Options> หากไม่ได้ใช้ <Format>

ใช้ทั้งองค์ประกอบ <Format> หรือกลุ่มองค์ประกอบ <Options> คุณไม่สามารถใช้ทั้ง <Format> และ <Options> รูปแบบที่กำหนดไว้ล่วงหน้า ได้แก่ xml.com, yahoo, google และ badgerFish

การวินิจฉัย

  1. ตรวจสอบนโยบาย XML เป็น JSON ทั้งหมดในพร็อกซี API ที่เฉพาะเจาะจงซึ่งเกิดข้อผิดพลาด หากมีนโยบาย XML เป็น JSON ที่ไม่ได้ประกาศองค์ประกอบ <Options> หรือ <Format> ข้อใดข้อหนึ่ง นั่นคือสาเหตุของข้อผิดพลาด

    ตัวอย่างเช่น นโยบายต่อไปนี้ไม่มีองค์ประกอบใดที่ประกาศไว้

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON">
        <DisplayName>XMLToJSON</DisplayName>
        <Properties/>
        <OutputVariable>response</OutputVariable>
        <Source>response</Source>
    </XMLToJSON>
    

ความละเอียด

ตรวจสอบว่า XML ของนโยบาย XML เป็น JSON มีองค์ประกอบ <Options> หรือ <Format> อย่างใดอย่างหนึ่งที่ประกาศไว้ในนโยบาย

ตัวอย่างที่ 1:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON">
    <DisplayName>XMLToJSON</DisplayName>
    <Properties/>
    <Format>google</Format>
    <OutputVariable>response</OutputVariable>
    <Source>response</Source>
</XMLToJSON>

ตัวอย่างที่ 2:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON">
    <DisplayName>XMLToJSON</DisplayName>
    <Properties/>
    <Options>
        <RecognizeNumber>true</RecognizeNumber>
        <RecognizeBoolean>true</RecognizeBoolean>
        <RecognizeNull>true</RecognizeNull>
    </Options>
    <OutputVariable>response</OutputVariable>
    <Source>response</Source>
</XMLToJSON>

UnknownFormat

ข้อความแสดงข้อผิดพลาด

การติดตั้งใช้งานพร็อกซี API ผ่าน UI ของ Edge หรือ Edge Management API ล้มเหลวโดยมีข้อความแสดงข้อผิดพลาดนี้

Error Saving Revision [revision_number]
XMLToJSON[policy_name]: Unknown Format [unknown_format].

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

Error Saving Revision 1
XMLToJSON[WithFormat]: Unknown Format google.com.

ภาพหน้าจอตัวอย่าง

สาเหตุ

หากองค์ประกอบ <Format> ภายในนโยบาย XML เป็น JSON มีรูปแบบที่ไม่รู้จัก การติดตั้งใช้งานพร็อกซี API จะล้มเหลว

รูปแบบที่กำหนดไว้ล่วงหน้า ได้แก่ xml.com, yahoo, google และ badgerFish

การวินิจฉัย

  1. ระบุนโยบาย XML เป็น JSON ที่เกิดข้อผิดพลาดและรูปแบบที่ไม่รู้จัก คุณดูข้อมูลนี้ได้จากข้อความแสดงข้อผิดพลาด ตัวอย่างเช่น ในข้อผิดพลาดต่อไปนี้ ชื่อนโยบายคือ WithFormat และรูปแบบที่ไม่รู้จักคือ google.com

    Error Saving Revision 1
    XMLToJSON[WithFormat]: Unknown Format google.com.
    
  2. ตรวจสอบว่ารูปแบบที่ไม่รู้จักที่ระบุในนโยบาย XML เป็น JSON ที่ไม่สำเร็จตรงกับค่าที่ระบุในข้อความแสดงข้อผิดพลาด (ขั้นตอนที่ 1 ด้านบน) ตัวอย่างเช่น นโยบายต่อไปนี้ระบุรูปแบบเป็น google.com ซึ่งตรงกับสิ่งที่อยู่ในข้อความแสดงข้อผิดพลาด

    <XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat">
      <DisplayName>WithFormat</DisplayName>
      <Properties/>
      <Format>google.com</Format>
      <OutputVariable>response</OutputVariable>
      <Source>response</Source>
    </XMLToJSON>
    
  3. หากรูปแบบที่ระบุไม่ใช่รูปแบบใดรูปแบบหนึ่งในรูปแบบที่กำหนดไว้ล่วงหน้า xml.com, yahoo, google หรือ badgerFish แสดงว่านั่นคือสาเหตุของข้อผิดพลาด

    ในนโยบาย XML เป็น JSON ตัวอย่างที่แสดงด้านบน รูปแบบคือ google.com ซึ่งไม่ถูกต้อง ดังนั้น การติดตั้งใช้งานพร็อกซี API จึงล้มเหลวโดยมีข้อผิดพลาดดังนี้

    XMLToJSON[WithFormat]: Unknown Format google.com.
    

ความละเอียด

ตรวจสอบว่ารูปแบบที่ระบุในองค์ประกอบ <Format> ของนโยบาย XML เป็น JSON ถูกต้อง เช่น

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat">
  <DisplayName>WithFormat</DisplayName>
  <Properties/>
  <Format>google</Format>
  <OutputVariable>response</OutputVariable>
  <Source>response</Source>
</XMLToJSON>