आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं. जानकारी
हमने मंगलवार, 30 अगस्त, 2016 को Apigee Edge for Public Cloud का नया वर्शन रिलीज़ किया था.
नई सुविधाएं और अपडेट
इस रिलीज़ में नई सुविधाएं और अपडेट शामिल किए गए हैं. इनके बारे में यहां बताया गया है.
Assign Message और Raise Fault में JSON पेलोड
इस सुविधा के बेहतर होने से, JSON मैसेज को सही तरीके से फ़ॉर्मैट करने के लिए किसी अन्य तरीके का इस्तेमाल करने की ज़रूरत नहीं पड़ती. साथ ही, अमान्य JSON बनाए बिना घुंघराले ब्रैकेट का इस्तेमाल करके वैरिएबल तय किए जा सकते हैं. उदाहरण के लिए, यहां JSON मैसेज में message.content की वैल्यू डाली गई है:
<Payload contentType="application/json">{"message" : "{message.content}"}</Payload>
अगर आपने कोई अन्य तरीका इस्तेमाल किया है, तो आपका कोड पहले की तरह काम करता रहेगा. वैरिएबल दिखाने के लिए, कर्ली ब्रेसिज़ के बजाय variablePrefix और variableSuffix का इस्तेमाल भी किया जा सकता है.
Assign Message नीति और Raise Fault नीति के रेफ़रंस दस्तावेज़ों में, <Set><Payload> एलिमेंट देखें. (APIRT-1160)
नीति के तहत एक्सएमएल को JSON में बदलने की सुविधा में सुधार
XML से JSON में बदलने की नीति को बेहतर बनाया गया है. अब इसमें ये सुविधाएं उपलब्ध हैं. नीति को इस तरह कॉन्फ़िगर किया जा सकता है:
- कन्वर्ज़न के दौरान कुछ XML एलिमेंट को ऐरे के तौर पर माना जाता है. इससे JSON दस्तावेज़ में वैल्यू को स्क्वेयर ब्रैकेट '[ ]' में रखा जाता है.
- फ़ाइनल JSON दस्तावेज़ में, XML दस्तावेज़ के क्रम में मौजूद लेवल को हटाना या कम करना.
ज़्यादा जानकारी के लिए, XML से JSON में बदलने की नीति देखें. (APIRT-1144)
एपीआई प्रॉडक्ट के रिसॉर्स पाथ में एक से ज़्यादा वाइल्डकार्ड
एपीआई प्रॉडक्ट में संसाधन के पाथ तय करते समय, संसाधन के पाथ में एक से ज़्यादा जगहों पर वाइल्डकार्ड शामिल किए जा सकते हैं. उदाहरण के लिए, /team/*/invoices/** /team के बाद किसी भी वैल्यू और invoices/ के बाद किसी भी संसाधन के पाथ के साथ एपीआई कॉल करने की अनुमति देता है. एपीआई कॉल पर अनुमति दिया गया यूआरआई proxyBasePath/team/finance/invoices/company/a होगा.
अगर इस रिलीज़ के बाद, आपके मौजूदा एपीआई प्रॉडक्ट के संसाधन पाथ उम्मीद के मुताबिक काम नहीं करते हैं, तो अपने संगठन के लिए यह प्रॉपर्टी सेट करें, ताकि पहले की तरह काम किया जा सके: features.enableStandardWildCardMatchForAPIProductResources = true
(MGMT-3273)
JavaScript में क्रिप्टो फ़ंक्शन
ज़्यादा परफ़ॉर्मेंस देने वाले JavaScript crypto फ़ंक्शन का एक नया सेट उपलब्ध है. इसका इस्तेमाल, MD5, SHA-1, SHA256, SHA512 जैसे हैश ऑब्जेक्ट बनाने, पाने, और अपडेट करने के लिए किया जा सकता है.
crypto ऑब्जेक्ट की मदद से, तारीख को अलग-अलग फ़ॉर्मैट में भी पाया जा सकता है. ज़्यादा जानकारी के लिए, JavaScript ऑब्जेक्ट मॉडल देखें.
(APIRT-2886)
Java कॉलआउट JAR वर्शन की जांच की जा रही है
अगर Java JAR संसाधन का वर्शन, Edge के साथ काम करने वाले Java के वर्शन के साथ काम नहीं करता है, तो एपीआई प्रॉक्सी में Java JAR संसाधन अपलोड करते समय, HTTP 400 स्टेटस कोड दिखता है. सपोर्ट किए गए सॉफ़्टवेयर और उनके वर्शन में, Edge के साथ काम करने वाले Java के वर्शन की जानकारी दी गई है. (MGMT-3420)
एपीआई प्रॉक्सी रिसॉर्स की पुष्टि करना
अगर आपके पास एनवायरमेंट या संगठन के स्कोप में सेव की गई एपीआई प्रॉक्सी रिसॉर्स फ़ाइलें (जैसे कि JavaScript या Java JAR) हैं, तो पुष्टि करने वाले फ़्रेमवर्क को अब यह ज़रूरी नहीं है कि आप उन रिसॉर्स को एपीआई प्रॉक्सी लेवल पर भी शामिल करें. ऐसा इसलिए, ताकि पुष्टि करने के लिए इंपोर्ट किए जाने वाले प्रॉक्सी बंडल में उन्हें शामिल किया जा सके. अब संसाधन की पुष्टि, इंपोर्ट करने के समय नहीं, बल्कि डिप्लॉय करने के समय होती है. (MGMT-1430)
अलग-अलग एपीआई प्रॉक्सी के लिए टाइमआउट कॉन्फ़िगर करना
एपीआई प्रॉक्सी को कॉन्फ़िगर किया जा सकता है, ताकि वे तय समय के बाद टाइम आउट हो जाएं. ऐसा करने पर, 504 गेटवे टाइमआउट स्टेटस दिखेगा. इसका मुख्य इस्तेमाल Private Cloud के उन ग्राहकों के लिए है जिनके पास ऐसी एपीआई प्रॉक्सी हैं जिन्हें पूरा होने में ज़्यादा समय लगता है. उदाहरण के लिए, मान लें कि आपको कुछ प्रॉक्सी के लिए टाइम आउट की अवधि तीन मिनट सेट करनी है. एपीआई प्रॉक्सी के कॉन्फ़िगरेशन में, नई api.timeout प्रॉपर्टी का इस्तेमाल किया जा सकता है. यहां तीन मिनट के उदाहरण के साथ बताया गया है कि इसे कैसे किया जा सकता है:
- सबसे पहले, लोड बैलेंसर, राऊटर, और मैसेज प्रोसेसर को तीन मिनट के बाद टाइम आउट होने के लिए कॉन्फ़िगर करें.
- इसके बाद, काम की प्रॉक्सी को तीन मिनट में टाइम आउट होने के लिए कॉन्फ़िगर करें. वैल्यू को मिलीसेकंड में डालें. उदाहरण के लिए:
<ProxyEndpoint name="default"> <HTTPProxyConnection> <BasePath>/v1/weather</BasePath> <Properties> <!-- api.timeout is in milliseconeds --> <Property name="api.timeout">180000</Property> </Properties> ... - हालांकि, ध्यान दें कि सिस्टम के टाइमआउट को बढ़ाने से परफ़ॉर्मेंस से जुड़ी समस्याएं हो सकती हैं. ऐसा इसलिए होता है, क्योंकि api.timeout सेटिंग के बिना सभी प्रॉक्सी, नए और ज़्यादा लोड बैलेंसर, राऊटर, और मैसेज प्रोसेसर के टाइमआउट का इस्तेमाल करती हैं. इसलिए, उन एपीआई प्रॉक्सी को कॉन्फ़िगर करें जिनके लिए कम टाइमआउट की ज़रूरत होती है, ताकि कम टाइमआउट का इस्तेमाल किया जा सके. उदाहरण के लिए, यहां एपीआई प्रॉक्सी को एक मिनट के बाद टाइम आउट होने के लिए सेट किया गया है:
<Property name="api.timeout">60000</Property>
क्लाउड ग्राहकों के पास Edge के टाइमआउट में बदलाव करने का विकल्प नहीं होता. हालांकि, वे एपीआई प्रॉक्सी के टाइमआउट को कॉन्फ़िगर कर सकते हैं. ऐसा तब तक किया जा सकता है, जब तक टाइमआउट, Edge के मैसेज प्रोसेसर के स्टैंडर्ड टाइमआउट (57 सेकंड) से कम हो.
वैरिएबल का इस्तेमाल करके वैल्यू नहीं भरी जा सकती. इस प्रॉपर्टी के बारे में एंडपॉइंट प्रॉपर्टी के रेफ़रंस में बताया गया है. (APIRT-1778)
मैसेज लॉगिंग के लिए TLS/SSL नीति
<KeyStore> और <TrustStore> को मैसेज लॉगिंग की नीति के तहत, SSLInfo कॉन्फ़िगरेशन में सेट किया जा सकता है. इससे लॉगिंग सेवा के साथ एक-तरफ़ा और दो-तरफ़ा टीएलएस/एसएसएल की अनुमति मिलती है. मैसेज लॉगिंग की नीति पर SSLInfo को उसी तरह कॉन्फ़िगर किया जाता है जिस तरह प्रॉक्सी
TargetEndpoint पर किया जाता है. हालांकि, मैसेज लॉगिंग टीएलएस/एसएसएल सिर्फ़ टीसीपी प्रोटोकॉल के साथ काम करता है.
(APIRT-1858)
गड़बड़ियां ठीक की गईं
इस रिलीज़ में इन बग को ठीक किया गया है. यह सूची मुख्य रूप से उन उपयोगकर्ताओं के लिए है जो यह देखना चाहते हैं कि उनके सहायता टिकट ठीक किए गए हैं या नहीं. इसे सभी उपयोगकर्ताओं के लिए ज़्यादा जानकारी देने के लिए डिज़ाइन नहीं किया गया है.
| समस्या आईडी | ब्यौरा |
|---|---|
| SECENG-609 | भरोसेमंद सर्टिफ़िकेट स्टोर को मिटाने या उसमें मौजूद मान्य सर्टिफ़िकेट को मिटाने के दौरान, रनटाइम कॉल फ़ेल नहीं होने चाहिए |
| MGMT-3404 | Node.js लॉग देखने/वापस पाने और प्रॉक्सी डिप्लॉय करने की प्रोसेस बहुत धीमी है |
| MGMT-3400 | अगर कॉल करने वाले उपयोगकर्ता के नाम में "+" का निशान है, तो /userroles management API को कॉल नहीं किया जा सकता |
| MGMT-3368 | java.lang.ArrayIndexOutOfBoundsException: 1, when importing an API Proxy bundle that contains resources/node/resources directory |
| MGMT-3364 | OAuthV2: redirect_uri की जांच |
| MGMT-3319 | वॉल्ट में मौजूद उन एंट्री की सूची नहीं बनाई जा सकती जिनमें से किसी एक एंट्री में शून्य वैल्यू है. यह सुविधा, संगठनों (सीपीएस और नॉन-सीपीएस) के लिए काम नहीं करती |
| MGMT-3226 | संगठन/एनवायरमेंट लेवल पर क्वेरी करने से, पूरा डेटा नहीं दिखना चाहिए. ऐसा होने पर, एपीआई काम नहीं करेगा Release_160302 में एक बग था. इसमें संगठन-लेवल/एनवायरमेंट लेवल पर संसाधनों की लिस्टिंग तब नहीं होती थी, जब संसाधनों का कुल साइज़ 16 एमबी से ज़्यादा होता था. इस समस्या को ठीक कर दिया गया है. |
| AXAPP-2429 | response_status_code का इस्तेमाल करने वाला Analytics API, डेटा का ऐक्सेस करने से जुड़ी गड़बड़ी दिखाता है |
| AXAPP-2386 | Analytics की रोज़ की ईमेल रिपोर्ट में, कॉन्टेंट न दिखने की समस्या ठीक करना |
| AXAPP-2347 | Analytics की रोज़ की खास जानकारी वाले ईमेल नहीं मिल रहे हैं |
| APIRT-3141 | Java कॉलआउट, new ExecutionResult() को कॉल करते समय काम नहीं करते, क्योंकि कंस्ट्रक्टर को निजी बना दिया गया है |
| APIRT-3140 | HEAD API कॉल में ServiceCallout नीति काम नहीं कर रही है |
| APIRT-3131 | बाहरी पुष्टि करने वाली कंपनी की मदद से कमाई करने की सुविधा का इस्तेमाल करने पर, एपीआई प्रॉक्सी के लिए createdBy फ़ील्ड में गलत वैल्यू दिखती है |
| APIRT-3121 | संगठन के संसाधन फ़ाइल में किए गए बदलाव पूरी तरह से लागू नहीं हुए हैं |
| APIRT-3117 | एमपी ने 100% सीपीयू का इस्तेमाल किया और ट्रैफ़िक दिखाना बंद कर दिया |
| APIRT-3016 | डप्लॉयमेंट पर राऊटर की "कॉल का समय खत्म हो गया" गड़बड़ियां |
| APIRT-2975 | सर्टिफ़िकेट बंडल अपलोड नहीं हो सका |
| APIRT-2955 | FHIR के मुताबिक, कॉन्टेंट-टाइप हेडर 'application/json+fhir' के लिए, JSON रिस्पॉन्स डेटा के कुछ एट्रिब्यूट को मास्क नहीं किया जा सका |
| APIRT-2946 | OAuthV2-RefreshToken नीति में एट्रिब्यूट नहीं छिपाए जा रहे हैं, भले ही डिसप्ले को false पर सेट किया गया हो |
| APIRT-2908 | वर्चुअल होस्ट पर TLS1.2 अपडेट करने के बाद, इंटरनल एपीआई कॉल के लिए TLS1.2 लागू करना ज़रूरी है |
| APIRT-2901 | कैश मेमोरी से मिले Gzipped जवाबों को दो बार कंप्रेस किया जाता है |
| APIRT-2873 | MPs, प्रॉडक्ट/डेवलपर/प्रॉक्सी मिटाने के बाद VerifyAPIKey से जुड़ा NullPointerException देते हैं |
| APIRT-2871 | IOIntensive नीतियां, Trace में दो बार दिख रही हैं |
| APIRT-2825 | ऐक्सेसटोकन की गड़बड़ी के जवाब में व्याकरण से जुड़ी गड़बड़ी |
| APIRT-2750 | किसी खास संगठन में ट्रैफ़िक से जुड़ी समस्याएं ज़्यादा हैं |
| APIRT-2685 | अनजान गड़बड़ी की वजह से ट्रैफ़िक नहीं मिल रहा है |
| APIRT-2647 | "इनपुट स्ट्रीम से कोई डेटा नहीं मिला" गड़बड़ी, जिसमें nonprod/dev शामिल है |
| APIRT-2630 | कैश मेमोरी से वैल्यू पढ़ने की कोशिश करते समय, कुछ समय के लिए समस्याएं आना |
| APIRT-2620 | कुछ ब्लॉकिंग चरणों के लिए अलग थ्रेड पूल |
| APIRT-2610 | Response Cache नीति के साथ java.lang.ClassCastException |
| APIRT-2608 | रिस्पॉन्स कैश करने की नीतियों में Last-Modified हेडर को पार्स करने के दौरान हुई गड़बड़ी |
| APIRT-2605 | नीतियों के ज़रिए"संगठन" और "एनवायरमेंट" वैरिएबल को ओवरराइट करने की अनुमति नहीं होनी चाहिए |
| APIRT-2566 | OAuthV2 नीति, गलत फ़ॉर्मैट वाला WWW-Authenticate हेडर दिखाती है |
| APIRT-2491 | मैनेजमेंट और एमपीएस के बीच आरपीसी टाइमआउट की वजह से, TargetServer अपडेट नहीं हो सका |
| APIRT-2386 | एपीआई प्रॉडक्ट में खाली स्ट्रिंग स्कोप बनाया गया है. इसमें Allowed OAuth scopes खाली हैं |
| APIRT-2383 | XSL ट्रांसफ़ॉर्मेशन की नीतियां, गड़बड़ी होने पर कोई डेटा लॉग नहीं करती हैं |
| APIRT-2364 | गड़बड़ी होने पर, OAuth फ़ॉल्ट फ़्लो वैरिएबल अपडेट नहीं हो रहे हैं |
| APIRT-2216 | सर्वर से भेजे गए इवेंट - प्रॉडक्ट में इवेंट स्ट्रीम से जुड़ी समस्याएं |
| APIRT-2079 | बनाए गए सेशन के लिए टाइम आउट खत्म होने के बाद, DEBUG cURL कॉल बंद नहीं हो रहा है |
| APIRT-1495 | एक्सएमएल थ्रेट प्रोटेक्शन, fhir Content-Type का पता नहीं लगा पा रहा है |
| APIRT-347 | XSL नीति को इंपोर्ट करते समय, उसकी पुष्टि सही तरीके से नहीं की गई है. इसलिए, दस्तावेज़ में बताए गए तरीके के मुताबिक, आउटपुट वैरिएबल को नतीजे असाइन नहीं किए गए हैं |