माइग्रेशन

Mapbox Geocoding से माइग्रेट करना

Mapbox Geocoding नतीजों को GeoJSON FeatureCollection के रूप में लौटाता है, जो एक सोचा-समझा चुनाव है और आउटपुट को सीधे Mapbox GL या किसी भी दूसरी GeoJSON समझने वाली मैपिंग लाइब्रेरी को देना आसान बनाता है। हर feature में एक center निर्देशांक जोड़ी, एक place_name स्ट्रिंग और एक context ऐरे होता है, जो उसे समाहित करने वाले क्षेत्र, देश और पिन कोड का वर्णन करता है। ऑथेंटिकेशन एक access token से होता है, जो आम तौर पर query पैरामीटर के रूप में भेजा जाता है, और कई टीमें उसी token को अपनी वेब मैप टाइल्स और जियोकोडिंग कॉल, दोनों में इस्तेमाल करती हैं।

एक ही token का यह दोहरा इस्तेमाल माइग्रेशन से पहले ध्यान देने लायक है, क्योंकि इसका मतलब है कि जियोकोडिंग कॉल और मैप रेंडरिंग कॉल एप्लिकेशन कोड में अक्सर पहली नज़र से ज़्यादा उलझे होते हैं। उन्हें साफ़ तौर पर अलग करना, ताकि जियोकोडिंग अनुरोध नए होस्ट की ओर जा सके जबकि मैप टाइल्स जहाँ हैं वहीं रहें, आम तौर पर पहला असली फ़ैसला होता है।

My Geocode का Mapbox कम्पैटिबिलिटी होस्ट center, place_name और context फ़ील्ड समेत FeatureCollection संरचना को दोहराता है, इसलिए response.features[0].center के इर्द-गिर्द बना कोड बदलाव के बाद भी काम करता रहता है। रिस्पॉन्स में केवल कॉपीराइट, शर्तों और गोपनीयता का टेक्स्ट Mapbox के अपने टेक्स्ट से अलग होता है। फ़ील्ड का संदर्भ /compatibility/mapbox/ पर है।

यह बदलाव करने वाली टीमों के लिए कुछ व्यावहारिक बातें:

  • अगर आपका फ़्रंट एंड क्लाइंट-साइड JavaScript से सीधे Mapbox Geocoding को कॉल करता है, तो आप चाहे जिस भी प्रोवाइडर पर जाएँ, पहले उस कॉल को सर्वर-साइड प्रॉक्सी पर ले जाने पर विचार करना चाहिए, क्योंकि इससे API कुंजियाँ ब्राउज़र कोड से बाहर रहती हैं
  • ऑथेंटिकेशन में X-API-Key हेडर, Authorization: Bearer हेडर, HTTP Basic auth या query पैरामीटर स्वीकार होता है, इसलिए आपका मौजूदा Mapbox क्लाइंट अपने access token के लिए जो भी तरीका इस्तेमाल करता है, वह इनमें से किसी एक से मेल खाना चाहिए
  • अगर आप नतीजों को किसी क्षेत्र की ओर झुकाने के लिए Mapbox के proximity या bounding box पैरामीटर पर निर्भर हैं, तो यह मानने से पहले कि वे बिना बदलाव के आगे आ जाएँगे, कम्पैटिबिलिटी होस्ट के दस्तावेज़ में उनके समकक्ष पैरामीटर नाम देख लें

कीमत का ढाँचा token के उन स्तरों को हटा देता है जो कई मैपिंग प्लेटफ़ॉर्म पर इस्तेमाल के स्तरों के साथ बढ़ते जाते हैं। यहाँ प्रतिदिन 2,500 अनुरोध बिना किसी कुंजी के मुफ़्त हैं, और हर कुंजी के साथ भी नेटवर्क के हिसाब से गिने जाने वाले अपने प्रतिदिन 2,500 मुफ़्त अनुरोध आते हैं। इसके बाद €0.0001 प्रति अनुरोध की दर से प्रीपेड क्रेडिट या €50 प्रति माह की Unlimited कुंजी है, और इस कम्पैटिबिलिटी होस्ट समेत हर एंडपॉइंट की कीमत बराबर है।

क्योंकि Mapbox अक्सर सिर्फ़ जियोकोडिंग के लिए नहीं, बल्कि मैप टाइल्स और स्टैटिक मैप इमेज के साथ इस्तेमाल होता है, इसलिए दायरे को लेकर स्पष्ट रहना ज़रूरी है: My Geocode एक जियोकोडिंग, IP, समय क्षेत्र, ऊँचाई और पिन कोड लुकअप API है, टाइल या बेसमैप प्रोवाइडर नहीं। जो टीमें अपनी मौजूदा मैप रेंडरिंग रखते हुए केवल पते के लुकअप को नए होस्ट पर ले जा रही हैं, उन्हें कुछ समय तक दो प्रोवाइडर साथ-साथ चलाने की उम्मीद रखनी चाहिए, एक टाइल्स के लिए और एक जियोकोडिंग के लिए, जो काम बाँटने का एक सामान्य और स्थिर तरीका है, न कि कोई अस्थायी स्थिति जिससे जल्दी निकलना हो।