16.08.17 - सार्वजनिक क्लाउड के रिलीज़ नोट के लिए Apigee Edge

आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं.
जानकारी

हमने मंगलवार, 30 अगस्त, 2016 को Apigee Edge for Public Cloud का नया वर्शन रिलीज़ किया था.

नई सुविधाएं और अपडेट

इस रिलीज़ में नई सुविधाएं और अपडेट शामिल किए गए हैं. इनके बारे में यहां बताया गया है.

Assign Message और Raise Fault में JSON पेलोड

Assign Message या Raise Fault नीति का इस्तेमाल करके JSON पेलोड सेट करते समय, उपयोगकर्ताओं को कभी-कभी यह पक्का करने के लिए कि रनटाइम के दौरान JSON मैसेज सही तरीके से फ़ॉर्मैट किया गया है, कुछ अन्य तरीके इस्तेमाल करने पड़ते थे. जैसे, पेलोड की शुरुआत बैकस्लैश "\" से करना या Payload एलिमेंट पर variablePrefix और variableSuffix तय करना. ऐसा तब भी करना पड़ता था, जब मैसेज में किसी वैरिएबल का इस्तेमाल नहीं किया गया हो.

इस सुविधा के बेहतर होने से, 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 प्रॉपर्टी का इस्तेमाल किया जा सकता है. यहां तीन मिनट के उदाहरण के साथ बताया गया है कि इसे कैसे किया जा सकता है:

  1. सबसे पहले, लोड बैलेंसर, राऊटर, और मैसेज प्रोसेसर को तीन मिनट के बाद टाइम आउट होने के लिए कॉन्फ़िगर करें.
  2. इसके बाद, काम की प्रॉक्सी को तीन मिनट में टाइम आउट होने के लिए कॉन्फ़िगर करें. वैल्यू को मिलीसेकंड में डालें. उदाहरण के लिए:
    <ProxyEndpoint name="default">
      <HTTPProxyConnection>
        <BasePath>/v1/weather</BasePath>
        <Properties>
          <!-- api.timeout is in milliseconeds -->
          <Property name="api.timeout">180000</Property>
        </Properties>
        ...
  3. हालांकि, ध्यान दें कि सिस्टम के टाइमआउट को बढ़ाने से परफ़ॉर्मेंस से जुड़ी समस्याएं हो सकती हैं. ऐसा इसलिए होता है, क्योंकि 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 नीति को इंपोर्ट करते समय, उसकी पुष्टि सही तरीके से नहीं की गई है. इसलिए, दस्तावेज़ में बताए गए तरीके के मुताबिक, आउटपुट वैरिएबल को नतीजे असाइन नहीं किए गए हैं