इसे छोड़कर कंटेंट पर जाएं

हेडर संदर्भ मार्गदर्शिका

MirApi Gateway द्वारा समर्थित सभी X-* कंट्रोल हेडर का पूर्ण संदर्भ। ये हेडर गेटवे द्वारा पढ़े जाते हैं और अपस्ट्रीम API को फॉरवर्ड करने से पहले हटा दिए जाते हैं।


प्रमाणीकरण (Authentication)

Section titled “प्रमाणीकरण (Authentication)”

प्रत्येक अनुरोध पर आवश्यक।

आपकी MirApi API कुंजी। गेटवे इसके SHA-256 हैश का उपयोग करके इसे Redis कैश के विरुद्ध सत्यापित करता है। कैश मिस होने पर, यह PostgreSQL डेटाबेस पर वापस आ जाता है। यदि गायब या अमान्य है, तो 401 Unauthorized लौटाता है।


आवश्यक (जब तक X-Route-Key का उपयोग न किया जाए)।

अनुरोध को फॉरवर्ड करने के लिए अपस्ट्रीम API एंडपॉइंट का पूर्ण URL। इसमें स्कीम (https://) और होस्ट शामिल होना चाहिए।

X-Target-URL के बजाय अपने डैशबोर्ड से पूर्व-कॉन्फ़िगर किए गए रूट का उपयोग करें। रूट टारगेट URL, फ़ेलओवर टारगेट, टाइमआउट, बॉडी मैपिंग और रिस्पॉन्स एक्सट्रैक्शन नियमों को संग्रहीत करता है।


क्रेडेंशियल ऑफलोडिंग (Secret Offloading)

Section titled “क्रेडेंशियल ऑफलोडिंग (Secret Offloading)”

इसके मान को अपस्ट्रीम API में Authorization हेडर के रूप में फॉरवर्ड करता है। यह कुंजी अनुरोध की अवधि के लिए केवल मेमोरी में पढ़ी जाती है और कभी भी लॉग या डेटाबेस में सहेजी नहीं जाती है।

डेटाबेस में सुरक्षित एन्क्रिप्टेड क्रेडेंशियल को डिक्रिप्ट करने के लिए पासफ्रेज।


लचीलापन और विश्वसनीयता (Resilience & Reliability)

Section titled “लचीलापन और विश्वसनीयता (Resilience & Reliability)”

अपस्ट्रीम API से प्रतिक्रिया की प्रतीक्षा करने की अधिकतम समय सीमा। डिफ़ॉल्ट: 30s (Go duration प्रारूप: 5s, 500ms). अधिकतम अनुमेय मान 30s है।

विफलता (5xx या नेटवर्क विफलता) पर अतिरिक्त प्रयास संख्या। डिफ़ॉल्ट: 0 (कोई रिट्राय नहीं)।

रिट्राय प्रयासों के बीच का बेस विलंब। गेटवे जिटर के साथ घातीय बैकऑफ़ (exponential backoff with jitter) का उपयोग करता है। डिफ़ॉल्ट: 100ms.

होस्ट के लिए सर्किट ब्रेकर सक्षम करें। मान: on या true। 1 मिनट में 5 लगातार विफलताओं के बाद सर्किट OPEN हो जाता है।

Redis में अंतिम सफल प्रतिक्रिया को निर्दिष्ट अवधि के लिए कैश करें। अपस्ट्रीम विफल होने पर यह कैश की गई प्रतिक्रिया लौटाता है। विफलता के बिना सफल अनुरोधों के लिए कैश का उपयोग नहीं किया जाता है। (Go duration प्रारूप: 60s, 5m, 1h).

यदि प्राथमिक URL विफल हो जाता है, तो एक वैकल्पिक अपस्ट्रीम URL जिसे आज़माया जाएगा।


एसिंक्रोनस प्रोसेसिंग (Asynchronous Processing)

Section titled “एसिंक्रोनस प्रोसेसिंग (Asynchronous Processing)”

एसिंक्रोनस मोड सक्षम करता है। गेटवे तुरंत 202 Accepted लौटाता है और कार्य पूरा होने पर परिणाम आपके कॉलबैक URL पर POST करता है।

अनुरोधों को डुप्लिकेट होने से रोकने के लिए कस्टम इडेम्पोटेंसी कुंजी। 60-सेकंड TTL के साथ सहेजा गया। अनुपस्थित होने पर, गेटवे स्वचालित रूप से SHA256(ClientID + TargetURL + Method + Body) से कुंजी की गणना करता है।


रिस्पॉन्स ट्रांसफ़ॉर्मेशन (Response Transformation)

Section titled “रिस्पॉन्स ट्रांसफ़ॉर्मेशन (Response Transformation)”

JSONPath का उपयोग करके प्रतिक्रिया से एक URL निकालता है और उस पर 302 Found रीडायरेक्ट लौटाता है।

JSONPath का उपयोग करके प्रतिक्रिया JSON से विशिष्ट फ़ील्ड निकालता है और उन्हें एक नए JSON संरचना में मैप करता है।


रिस्पॉन्स हेडर (Response Header)

Section titled “रिस्पॉन्स हेडर (Response Header)”

यदि गेटवे किसी अनुरोध को बचाता (rescue) है, तो प्रतिक्रिया में निम्न हेडर जोड़ा जाता है:

हेडरमानविवरण
X-Rescuedretryएक या अधिक स्वचालित पुनः प्रयासों के बाद सफलतापूर्वक प्रतिक्रिया परोसी गई
X-Rescuedcacheअपस्ट्रीम विफलता के बाद स्मार्ट कैश से प्रतिक्रिया परोसी गई
X-Rescuedfailoverप्राथमिक विफलता के बाद X-Failover-URL से प्रतिक्रिया परोसी गई
X-Rescuedcascade_fallbackरूट में एक कम प्राथमिकता वाले वैकल्पिक टारगेट से प्रतिक्रिया परोसी गई