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

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

EitherOptionOrFormat

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

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

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 หรือ API การจัดการ Edge ไม่สำเร็จพร้อมข้อความแสดงข้อผิดพลาดนี้

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>