16.08.17 - บันทึกประจำรุ่น Apigee Edge สำหรับระบบคลาวด์สาธารณะ

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

เราได้เปิดตัว Apigee Edge เวอร์ชันใหม่สำหรับระบบคลาวด์สาธารณะในวันอังคารที่ 30 สิงหาคม 2016

ฟีเจอร์และการอัปเดตใหม่ๆ

ฟีเจอร์และการอัปเดตใหม่ๆ ในรุ่นนี้มีดังนี้

เพย์โหลด JSON ใน "กำหนดข้อความและยกข้อผิดพลาด"

เมื่อตั้งค่าเพย์โหลด JSON โดยใช้นโยบาย Assign Message หรือ Raise Fault บางครั้งผู้ใช้จําเป็นต้องใช้วิธีแก้ปัญหาชั่วคราวเพื่อให้มั่นใจว่าข้อความ JSON จะได้รับการจัดรูปแบบอย่างถูกต้องขณะรันไทม์ เช่น การเริ่มเพย์โหลดด้วยแบ็กสแลช "\" หรือการระบุคำนำหน้าตัวแปรและตัวแปร Suffix ในองค์ประกอบ Payload แม้ว่าจะไม่ได้ใช้ตัวแปรในข้อความก็ตาม

การเพิ่มประสิทธิภาพนี้ไม่จําเป็นต้องใช้วิธีแก้ปัญหาเบื้องต้นเพื่อให้แน่ใจว่าการจัดรูปแบบข้อความ JSON ที่เหมาะสม และสามารถระบุตัวแปรโดยใช้วงเล็บปีกกาโดยไม่ต้องสร้าง JSON ที่ไม่ถูกต้อง ตัวอย่างต่อไปนี้แทรกค่าของ message.content ในข้อความ JSON

<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>

หากคุณใช้วิธีแก้ปัญหาชั่วคราว โค้ดจะทำงานต่อไปตามปกติ คุณยังใช้คำนำหน้าตัวแปรและตัวแปรต่อท้ายแทนวงเล็บปีกกาเพื่อระบุตัวแปรได้อีกด้วย

ดูองค์ประกอบ <Set><Payload> ในมอบหมายนโยบายข้อความและเอกสารอ้างอิงนโยบาย Raise Fault (APIRT-1160)

การปรับปรุงนโยบาย XML เป็น JSON

นโยบาย XML เป็น JSON ได้รับการปรับปรุงด้วยความสามารถต่อไปนี้ คุณกำหนดค่านโยบายเพื่อทำสิ่งต่อไปนี้ได้

  • จัดการองค์ประกอบ XML บางรายการเป็นอาร์เรย์ระหว่างการแปลง ซึ่งจะใส่ค่าไว้ในวงเล็บเหลี่ยม "[ ]" ในเอกสาร JSON
  • ตัดหรือกำจัดระดับของลำดับชั้นเอกสาร XML ในเอกสาร JSON สุดท้าย

ดูข้อมูลเพิ่มเติมได้ที่นโยบาย XML เป็น JSON (APIRT-1144)

มีไวลด์การ์ดหลายรายการในเส้นทางทรัพยากรผลิตภัณฑ์ API

เมื่อกำหนดเส้นทางทรัพยากรในผลิตภัณฑ์ API คุณจะใส่ไวลด์การ์ดในหลายๆ ตำแหน่งในเส้นทางทรัพยากรได้ ตัวอย่างเช่น /team/*/invoices/** อนุญาตการเรียก API ที่มีค่าใดค่าหนึ่งหลังจาก /team และเส้นทางของทรัพยากรหลังจากวันที่ invoices/ URI ที่อนุญาตในการเรียก API จะเป็น proxyBasePath/team/finance/invoices/company/a

หากเส้นทางทรัพยากรผลิตภัณฑ์ API ที่มีอยู่หยุดทำงานหลังจากรุ่นนี้แล้ว ให้ตั้งค่าพร็อพเพอร์ตี้ต่อไปนี้ในองค์กรเพื่อเปลี่ยนกลับไปเป็นลักษณะการทำงานก่อนหน้า features.enableStandardWildCardMatchForAPIProductResources = true

(MGMT-3273)

ฟังก์ชัน Crypto ใน JavaScript

ฟังก์ชัน JavaScript crypto ประสิทธิภาพสูงชุดใหม่พร้อมให้ใช้สำหรับการสร้าง รับ และอัปเดตออบเจ็กต์ต่อไปนี้ ได้แก่ MD5, SHA-1, SHA256, SHA512 ออบเจ็กต์ crypto ยังช่วยให้คุณดูวันที่ในรูปแบบต่างๆ ได้อีกด้วย ดูข้อมูลเพิ่มเติมได้ที่โมเดลออบเจ็กต์ JavaScript (APIRT-2886)

การตรวจสอบเวอร์ชัน Java ข้อความไฮไลต์ JAR

เมื่ออัปโหลดทรัพยากร Java JAR ไปยังพร็อกซี API ระบบจะส่งรหัสสถานะ HTTP 400 กลับมา (แทน 500) หากเวอร์ชันของทรัพยากร Java เข้ากันไม่ได้กับ Java เวอร์ชันที่รองรับ Edge ซึ่งแสดงในซอฟต์แวร์ที่รองรับและเวอร์ชันที่รองรับ (MGMT-3420)

การตรวจสอบทรัพยากรพร็อกซี API

เมื่อคุณมีไฟล์ทรัพยากรพร็อกซี API (เช่น JavaScript หรือ Java JAR) ที่จัดเก็บไว้ที่สภาพแวดล้อมหรือขอบเขตองค์กร เฟรมเวิร์กการตรวจสอบจะไม่กำหนดให้คุณรวมทรัพยากรเหล่านั้นที่ระดับพร็อกซี API ในกลุ่มพร็อกซีสำหรับการนำเข้าเพื่อผ่านการตรวจสอบอีกต่อไป ขณะนี้การตรวจสอบทรัพยากรจะเกิดขึ้น ณ เวลาที่ทำให้ใช้งานได้ ไม่ใช่เวลาที่นำเข้า (MGMT-1430)

กำหนดค่าการหมดเวลาสำหรับพร็อกซี API แต่ละรายการ

คุณสามารถกำหนดค่าพร็อกซี API ให้หมดเวลาหลังจากเวลาที่ระบุได้ (โดยมีสถานะระยะหมดเวลาของเกตเวย์ 504) โดยกรณีการใช้งานหลักคือลูกค้า Private Cloud ที่มีพร็อกซี API ที่ใช้เวลาในการดำเนินการนานกว่า ตัวอย่างเช่น สมมติว่าคุณต้องการพร็อกซีที่เจาะจงเพื่อหมดเวลาที่ 3 นาที คุณสามารถใช้พร็อพเพอร์ตี้ api.timeout ใหม่ในการกำหนดค่าสำหรับพร็อกซี API วิธีดำเนินการด้วยตัวอย่างความยาว 3 นาทีมีดังนี้

  1. ก่อนอื่น โปรดกำหนดค่าตัวจัดสรรภาระงาน เราเตอร์ และผู้ประมวลผลข้อความให้หมดเวลาหลังจากผ่านไป 3 นาที
  2. จากนั้นกำหนดค่าพร็อกซีที่เกี่ยวข้องให้หมดเวลาที่ 3 นาที โปรดระบุค่าเป็นมิลลิวินาที ตัวอย่างเช่น
    <ProxyEndpoint name="default">
      <HTTPProxyConnection>
        <BasePath>/v1/weather</BasePath> 
        <Properties> 
          <!-- api.timeout is in milliseconeds -->
          <Property name="api.timeout">180000</Property>
        </Properties>
        ...
    
  3. อย่างไรก็ตาม โปรดทราบว่าการเพิ่มระยะหมดเวลาของระบบอาจส่งผลให้เกิดปัญหาด้านประสิทธิภาพ เนื่องจากพร็อกซีทั้งหมดที่ไม่มีการตั้งค่า api.timeout จะใช้ระยะหมดเวลาใหม่ของตัวจัดสรรภาระงาน เราเตอร์ และผู้ประมวลผลข้อความ ดังนั้นให้กำหนดค่าพร็อกซี API อื่นๆ ที่ไม่ต้องใช้ระยะหมดเวลานานขึ้นเพื่อใช้ระยะหมดเวลาที่ต่ำลง ตัวอย่างเช่น ค่าต่อไปนี้ตั้งค่าพร็อกซี API ให้หมดเวลาหลังจากผ่านไป 1 นาที
    <Property name="api.timeout">60000</Property>

ลูกค้า Cloud ที่แก้ไขระยะหมดเวลา Edge ไม่ได้ยังกำหนดค่าระยะหมดเวลาของพร็อกซี API ได้ด้วย ตราบใดที่ระยะหมดเวลานั้นสั้นกว่าระยะหมดเวลาของโปรแกรมประมวลผลข้อความ Edge มาตรฐานที่ 57 วินาที

คุณไม่สามารถเติมข้อมูลค่าด้วยตัวแปร พร็อพเพอร์ตี้นี้รวมอยู่ในการอ้างอิงพร็อพเพอร์ตี้ปลายทาง (APIRT-1778)

TLS/SSL สำหรับนโยบายการบันทึกข้อความ

ตั้งค่า <KeyStore> และ <TrustStore> ได้ในการกำหนดค่า SSLInfo ในนโยบายการบันทึกข้อความ ซึ่งจะอนุญาต TLS/SSL แบบทางเดียวและ 2 ทางกับบริการบันทึก คุณกำหนดค่า SSLInfo ในนโยบายการบันทึกข้อความเหมือนกับที่ทำบนพร็อกซี TargetEndpoint แต่ TLS/SSL ของการบันทึกข้อความรองรับเฉพาะโปรโตคอล TCP (APIRT-1858)

แก้ไขข้อบกพร่องแล้ว

ข้อบกพร่องต่อไปนี้ได้รับการแก้ไขในรุ่นนี้ รายการนี้มีไว้เพื่อให้ผู้ใช้ตรวจสอบเพื่อดูว่าตั๋วสนับสนุนได้รับการแก้ไขแล้วหรือยังเป็นหลัก แต่ไม่ได้ออกแบบมาเพื่อให้ข้อมูลโดยละเอียดแก่ผู้ใช้ทั้งหมด

รหัสปัญหา คำอธิบาย
SECENG-609 การเรียกใช้รันไทม์จะไม่ล้มเหลวขณะลบ Truststore ที่เชื่อมโยงหรือเมื่อใบรับรองที่ถูกต้องใน Truststore ถูกลบ
MGMT-3404 การดู/ดึงข้อมูลบันทึก Node.js และการทำให้พร็อกซีใช้งานได้ช้ามาก
MGMT-3400 การเรียกใช้ /userroles Management API จะไม่สำเร็จหากผู้ใช้ที่โทรมีเครื่องหมาย "+" อยู่ในชื่อ
MGMT-3368 java.lang.ArrayIndexOutOfBoundsException: 1 เมื่อนำเข้าแพ็กเกจพร็อกซี API ที่มีไดเรกทอรี resource/node/resources
MGMT-3364 OAuthV2: ตรวจสอบ redirect_uri
MGMT-3319 แสดงรายการข้อมูลในห้องนิรภัยที่มีค่า Null ในรายการหนึ่งซึ่งใช้ไม่ได้กับองค์กร (CPS และที่ไม่ใช่ CPS)
MGMT-3226 การค้นหาในระดับองค์กร/สภาพแวดล้อมไม่ควรดึงข้อมูลทั้งหมดที่ทำให้ API ล้มเหลว
Release_160302 มีข้อบกพร่องที่การแสดงรายการทรัพยากรในระดับองค์กร/สภาพแวดล้อมล้มเหลวหากขนาดสะสมของทรัพยากรมากกว่า 16 MB การแก้ไขนี้จะช่วยแก้ปัญหานี้ได้
AXAPP-2429 Analytics API ที่ใช้ response_status_code แสดงข้อผิดพลาดในการเข้าถึงข้อมูล
AXAPP-2386 แก้ไขเนื้อหาในรายงานที่ว่างเปล่าในรายงานอีเมลรายวันของ Analytics
AXAPP-2347 ไม่ได้รับอีเมลสรุปข้อมูลวิเคราะห์รายวัน
APIRT-3141 การเรียก Java ล้มเหลวเมื่อเรียก ExecutionResult() ใหม่ เนื่องจากตัวสร้างได้รับการตั้งค่าเป็นแบบส่วนตัว
APIRT-3140 นโยบาย ServiceAPI ไม่ทำงานในการเรียก API หลัก
APIRT-3131 CreateBy ไม่ถูกต้องสำหรับพร็อกซี API เมื่อใช้การสร้างรายได้กับผู้ให้บริการการตรวจสอบสิทธิ์ภายนอก
APIRT-3121 การเปลี่ยนแปลงไฟล์ทรัพยากรขององค์กรไม่มีประสิทธิภาพ 100%
APIRT-3117 MP มีการใช้งาน CPU ถึง 100% และหยุดแสดงการรับส่งข้อมูล
APIRT-3016 ข้อผิดพลาด "หมดเวลาในการโทร" ของเราเตอร์เกี่ยวกับการทำให้ใช้งานได้
APIRT-2975 อัปโหลดชุดใบรับรองไม่สำเร็จ
APIRT-2955 มาสก์แอตทริบิวต์บางรายการของข้อมูลการตอบกลับ JSON สำหรับส่วนหัว Content-Type "application/json+fhir" ไม่ได้
APIRT-2946 นโยบาย OAuthV2-refreshToken ไม่ซ่อนแอตทริบิวต์แม้ว่าจะตั้งค่าการแสดงผลเป็น "เท็จ"
APIRT-2908 จำเป็นต้องบังคับใช้ TLS1.2 สำหรับการเรียก API ภายในหลังการอัปเดต TLS1.2 ใน Virtualhost
APIRT-2901 การตอบกลับด้วย Gzip ที่แสดงผลจากแคชจะถูกบีบอัด 2 ครั้ง
APIRT-2873 MP แสดงข้อผิดพลาด NullPointerException ที่เกี่ยวข้องกับ ConfirmAPIKey หลังจากลบผลิตภัณฑ์/นักพัฒนาแอป/พร็อกซี
APIRT-2871 นโยบาย IOIntensive ปรากฏ 2 ครั้งใน Trace
APIRT-2825 ข้อผิดพลาดทางไวยากรณ์ในการตอบกลับข้อผิดพลาดเกี่ยวกับการเข้าถึง
APIRT-2750 มีความล้มเหลวในการรับส่งข้อมูลสูงในองค์กรที่ระบุ
APIRT-2685 การรับส่งข้อมูลจะลื่นไหลและเกิดข้อผิดพลาดที่ไม่รู้จัก
APIRT-2647 ข้อผิดพลาด"สตรีมอินพุตต่ำกว่าที่ระบุแสดงผล 0 ไบต์" ด้วย nonprod/dev
APIRT-2630 ปัญหาที่เป็นช่วงๆ เมื่อพยายามอ่านค่าจากแคช
APIRT-2620 แยกกลุ่มเทรดสำหรับขั้นตอนการบล็อกบางขั้นตอน
APIRT-2610 java.lang.ClassCastException ด้วยนโยบายแคชการตอบกลับ
APIRT-2608 ข้อผิดพลาดในการแยกวิเคราะห์ส่วนหัวที่แก้ไขล่าสุดในนโยบายแคชการตอบกลับ
APIRT-2605 ไม่ควรอนุญาตให้ตัวแปร"องค์กร" และ "สภาพแวดล้อม" เขียนทับผ่านนโยบาย
APIRT-2566 นโยบาย OAuthV2 แสดงผลส่วนหัว WWW-Authenticate ที่ผิดรูปแบบ
APIRT-2491 อัปเดต TargetServer ไม่สำเร็จเนื่องจาก RPC หมดเวลาระหว่างการจัดการและ mps
APIRT-2386 มีการสร้างขอบเขตสตริงที่ว่างเปล่าในผลิตภัณฑ์ API โดยมีขอบเขต OAuth ที่อนุญาตซึ่งว่างเปล่า
APIRT-2383 ดูเหมือนว่านโยบายการเปลี่ยนรูปแบบ XSL ไม่บันทึกข้อมูลใดๆ เมื่อมีข้อผิดพลาด
APIRT-2364 ตัวแปรโฟลว์ข้อผิดพลาด OAuth ไม่ได้รับการอัปเดตเนื่องจากเกิดข้อผิดพลาด
APIRT-2216 เซิร์ฟเวอร์ส่งเหตุการณ์ - สตรีมเหตุการณ์มีปัญหาในผลิตภัณฑ์
APIRT-2079 การเรียกใช้ cURL แบบ DEBUG ไม่หยุดทำงานหลังจากหมดเวลาสำหรับเซสชันที่สร้างขึ้น
APIRT-1495 XML Threat Protection ไม่ตรวจจับ fhir Content-Type
APIRT-347 นโยบาย XSL ไม่ได้ตรวจสอบอย่างถูกต้องเมื่อนำเข้า (ไม่กำหนดผลลัพธ์ให้กับตัวแปรเอาต์พุตตามที่บันทึกไว้)