คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่
เอกสารประกอบของ Apigee X info
เมื่อวันอังคารที่ 30 สิงหาคม 2016 เราได้เปิดตัว Apigee Edge เวอร์ชันใหม่สำหรับระบบคลาวด์สาธารณะ
ฟีเจอร์และการอัปเดตใหม่
ต่อไปนี้คือฟีเจอร์และการอัปเดตใหม่ในรุ่นนี้
เพย์โหลด JSON ในนโยบาย Assign Message และ Raise Fault
การปรับปรุงนี้ช่วยให้ไม่จำเป็นต้องใช้วิธีแก้ปัญหาเพื่อให้แน่ใจว่าข้อความ JSON มีรูปแบบที่ถูกต้อง และ สามารถระบุตัวแปรโดยใช้วงเล็บปีกกาได้โดยไม่ต้องสร้าง JSON ที่ไม่ถูกต้อง ตัวอย่างเช่น โค้ดต่อไปนี้จะแทรกค่าของ message.content ในข้อความ JSON
<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>
หากคุณใช้วิธีแก้ปัญหา โค้ดจะยังคงทำงานได้ตามเดิม นอกจากนี้ คุณยังใช้ variablePrefix และ variableSuffix แทนวงเล็บปีกกาเพื่อระบุตัวแปรได้ด้วย
ดูองค์ประกอบ <Set><Payload> ในเอกสารอ้างอิงนโยบาย Assign Message และ นโยบาย Raise Fault (APIRT-1160)
การปรับปรุงนโยบาย XML เป็น JSON
เราได้ปรับปรุงนโยบาย XML เป็น JSON ด้วยความสามารถต่อไปนี้ คุณสามารถกำหนดค่า นโยบายให้ดำเนินการต่อไปนี้ได้
- ถือว่าองค์ประกอบ XML บางรายการเป็นอาร์เรย์ระหว่างการแปลง ซึ่งจะวางค่าไว้ในวงเล็บเหลี่ยม '[ ]' ในเอกสาร JSON
- นำระดับลำดับชั้นของเอกสาร XML ออกในเอกสาร JSON สุดท้าย
ดูข้อมูลเพิ่มเติมได้ที่นโยบาย XML เป็น JSON (APIRT-1144)
ไวลด์การ์ดหลายรายการใน เส้นทางทรัพยากรของผลิตภัณฑ์ API
เมื่อกำหนดเส้นทางทรัพยากรในผลิตภัณฑ์ API คุณสามารถใส่ไวลด์การ์ดในเส้นทางทรัพยากรได้หลายตำแหน่งในa
เช่น /team/*/invoices/** อนุญาตการเรียก API ที่มีค่าใดค่าหนึ่งหลัง /team และเส้นทางทรัพยากรใดก็ได้หลัง invoices/ URI ที่อนุญาตในการเรียก API จะ
เป็น proxyBasePath/team/finance/invoices/company/a
หากหลังจากรุ่นนี้ เส้นทางทรัพยากรของผลิตภัณฑ์ API ที่มีอยู่หยุดทำงานตามที่คาดไว้ ให้ตั้งค่า
พร็อพเพอร์ตี้ต่อไปนี้ในองค์กรเพื่อกลับไปใช้ลักษณะการทำงานก่อนหน้า
features.enableStandardWildCardMatchForAPIProductResources = true
(MGMT-3273)
ฟังก์ชันการเข้ารหัสใน JavaScript
ฟังก์ชัน crypto ของ JavaScript ชุดใหม่ที่มีประสิทธิภาพสูงพร้อมให้คุณใช้งาน
เพื่อสร้าง รับ และอัปเดตออบเจ็กต์แฮชต่อไปนี้ MD5, SHA-1, SHA256, SHA512
นอกจากนี้ ออบเจ็กต์ crypto ยังช่วยให้คุณรับ
วันที่ในรูปแบบต่างๆ ได้ด้วย ดูข้อมูลเพิ่มเติมได้ที่ โมเดลออบเจ็กต์ JavaScript
(APIRT-2886)
การตรวจสอบเวอร์ชัน JAR ของ Java Callout
เมื่ออัปโหลดทรัพยากร JAR ของ Java ไปยังพร็อกซี 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 นาทีมีดังนี้
- ก่อนอื่น ให้กำหนดค่าตัวจัดสรรภาระงาน เราเตอร์ และตัวประมวลผลข้อความให้หมดเวลา หลังจากผ่านไป 3 นาที
- จากนั้นกำหนดค่าพร็อกซีที่เกี่ยวข้องให้หมดเวลาที่ 3 นาที ระบุค่าเป็น
มิลลิวินาที ตัวอย่างเช่น
<ProxyEndpoint name="default"> <HTTPProxyConnection> <BasePath>/v1/weather</BasePath> <Properties> <!-- api.timeout is in milliseconeds --> <Property name="api.timeout">180000</Property> </Properties> ... - อย่างไรก็ตาม โปรดทราบว่าการเพิ่มการหมดเวลาของระบบอาจทำให้เกิดปัญหาด้านประสิทธิภาพ เนื่องจาก
พร็อกซีทั้งหมดที่ไม่มีการตั้งค่า 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 แบบทางเดียวและสองทางกับบริการบันทึกได้ คุณกำหนดค่า SSLInfo ในนโยบายการบันทึกข้อความในลักษณะเดียวกับที่คุณ
กำหนดค่าใน
TargetEndpoint ของพร็อกซี อย่างไรก็ตาม TLS/SSL ของการบันทึกข้อความรองรับเฉพาะโปรโตคอล TCP เท่านั้น
(APIRT-1858)
ข้อบกพร่องที่แก้ไขแล้ว
เราได้แก้ไขข้อบกพร่องต่อไปนี้ในรุ่นนี้ รายการนี้มีไว้สำหรับผู้ใช้ที่ต้องการตรวจสอบว่าตั๋วสนับสนุนของตนได้รับการแก้ไขแล้วหรือไม่ จึงไม่ได้ออกแบบมาเพื่อให้ข้อมูลโดยละเอียดแก่ ผู้ใช้ทุกคน
| รหัสปัญหา | คำอธิบาย |
|---|---|
| SECENG-609 | การเรียกใช้รันไทม์ไม่ล้มเหลวระหว่างการลบ Truststore ที่เชื่อมโยงหรือ เมื่อมีการลบใบรับรองที่ถูกต้องใน Truststore |
| MGMT-3404 | การดู/ดึงข้อมูลบันทึกของ Node.js และการติดตั้งใช้งานพร็อกซีช้ามาก |
| MGMT-3400 | การเรียกใช้ API การจัดการ /userroles จะล้มเหลวหากผู้ใช้ที่เรียกใช้มี "+" ในชื่อ |
| MGMT-3368 | java.lang.ArrayIndexOutOfBoundsException: 1 เมื่อนำเข้าชุดพร็อกซี API ที่มีไดเรกทอรี resources/node/resources |
| MGMT-3364 | OAuthV2: การตรวจสอบ redirect_uri |
| MGMT-3319 | การแสดงรายการใน Vault ที่มีค่า 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 Callout ล้มเหลวเมื่อเรียกใช้ new ExecutionResult() เนื่องจากมีการตั้งค่าคอนสตรักเตอร์ เป็นแบบส่วนตัว |
| APIRT-3140 | นโยบาย ServiceCallout ไม่ทำงานในการเรียก API ของ HEAD |
| APIRT-3131 | แสดง createdBy ไม่ถูกต้องสำหรับพร็อกซี API เมื่อใช้การสร้างรายได้กับ ผู้ให้บริการการตรวจสอบสิทธิ์ภายนอก |
| APIRT-3121 | การเปลี่ยนแปลงไฟล์ทรัพยากรขององค์กรไม่มีประสิทธิภาพ 100% |
| APIRT-3117 | MP มีการใช้ CPU ถึง 100% และหยุดให้บริการการเข้าชม |
| APIRT-3016 | ข้อผิดพลาด "การเรียกหมดเวลา" ของเราเตอร์ในการติดตั้งใช้งาน |
| APIRT-2975 | การอัปโหลดชุดใบรับรองไม่สำเร็จ |
| APIRT-2955 | ไม่สามารถมาสก์แอตทริบิวต์บางรายการของข้อมูลการตอบกลับ JSON สำหรับส่วนหัว Content-Type 'application/json+fhir' ที่เป็นไปตามข้อกำหนด FHIR |
| APIRT-2946 | นโยบาย OAuthV2-RefreshToken ไม่ซ่อนแอตทริบิวต์แม้ว่าจะตั้งค่าการแสดงผลเป็น "เท็จ" |
| APIRT-2908 | ต้องบังคับใช้ TLS1.2 สำหรับการเรียก API ภายในหลังจากการอัปเดต TLS1.2 ใน Virtual Host |
| APIRT-2901 | การตอบกลับที่บีบอัดด้วย gzip ซึ่งแสดงผลจากแคชจะถูกบีบอัดซ้ำ |
| APIRT-2873 | MP แสดง NullPointerException ที่เกี่ยวข้องกับ VerifyAPIKey หลังจากลบ ผลิตภัณฑ์/นักพัฒนาแอป/พร็อกซี |
| APIRT-2871 | นโยบายที่ใช้ I/O มากปรากฏ 2 ครั้งใน Trace |
| APIRT-2825 | ข้อผิดพลาดด้านไวยากรณ์ในการตอบกลับข้อผิดพลาดของ Access Token |
| APIRT-2750 | การเข้าชมล้มเหลวจำนวนมากในองค์กรหนึ่งๆ |
| APIRT-2685 | การเข้าชมไม่สามารถไหลเวียนได้เนื่องจากมีการแสดงข้อผิดพลาดที่ไม่รู้จัก |
| APIRT-2647 | ข้อผิดพลาด"Underlying input stream returned zero bytes" กับ nonprod/dev |
| APIRT-2630 | ปัญหาเกิดขึ้นเป็นระยะๆ เมื่อพยายามอ่านค่าจากแคช |
| APIRT-2620 | พูลเธรดแยกต่างหากสำหรับขั้นตอนการบล็อกบางขั้นตอน |
| APIRT-2610 | java.lang.ClassCastException กับนโยบายการแคชการตอบกลับ |
| APIRT-2608 | ข้อผิดพลาดในการแยกวิเคราะห์ส่วนหัว Last-Modified ในนโยบายการแคชการตอบกลับ |
| APIRT-2605 | ไม่ควรอนุญาตให้เขียนทับตัวแปร"organization" และ "environment" ผ่านนโยบาย |
| APIRT-2566 | นโยบาย OAuthV2 แสดงผลส่วนหัว WWW-Authenticate ที่มีรูปแบบไม่ถูกต้อง |
| APIRT-2491 | **การอัปเดต TargetServer ไม่สำเร็จเนื่องจากการหมดเวลา RPC ระหว่างการจัดการกับ MP** |
| APIRT-2386 | ขอบเขตสตริงที่ว่างเปล่าจะถูกสร้างขึ้นในผลิตภัณฑ์ API ที่มีขอบเขต OAuth ที่อนุญาตที่ว่างเปล่า |
| APIRT-2383 | นโยบายการแปลง XSL ไม่บันทึกข้อมูลใดๆ เมื่อเกิด ข้อผิดพลาด |
| APIRT-2364 | ตัวแปรโฟลว์ข้อผิดพลาดของ OAuth ไม่ได้รับการอัปเดตเมื่อเกิดข้อผิดพลาด |
| APIRT-2216 | เหตุการณ์ที่เซิร์ฟเวอร์ส่ง - สตรีมเหตุการณ์มีปัญหาในเวอร์ชันที่ใช้งานจริง |
| APIRT-2079 | การเรียก cURL ของ DEBUG ไม่หยุดหลังจากเซสชันที่สร้างขึ้นหมดเวลา |
| APIRT-1495 | การป้องกันภัยคุกคาม XML ไม่ตรวจพบ Content-Type ของ FHIR |
| APIRT-347 | ระบบไม่ได้ตรวจสอบนโยบาย XSL อย่างถูกต้องเมื่อนำเข้า (ไม่ได้กำหนดผลลัพธ์ ให้กับตัวแปรเอาต์พุตตามที่ระบุไว้ในเอกสารประกอบ) |