मैंने प्रतिक्रियाशील देशी में लिखा एक ऐप (आईओएस के लिए) विकसित किया है जो आईपीवी 4 नेटवर्क में अच्छा काम कर रहा है। हालांकि, हाल ही में ऐप्पल ने एक संदेश भेजा है जिसमें कहा गया है कि आईपीवी 6 नेटवर्क में परीक्षण किए जाने पर मेरा ऐप काम नहीं करता था। उन्होंने मुझे बताया कि मुझे इसे आईपीवी 6-केवल नेटवर्क के साथ संगत बनाना था।एपीआई को .fetch फ़ंक्शन का उपयोग करके प्रतिक्रिया-मूल में आईपीवी 6 संगत कैसे कॉल करें?
सवाल यह है कि, मैं अपने मौजूदा एपीआई कॉल को आईपीवी 6 नेटवर्क के साथ संगत कैसे बना सकता हूं?
मेरा एपीआई https प्रोटोकॉल का उपयोग करता है और इसे डोमेन नाम से कहा जाता है, कच्चे आईपी नहीं।
एक नमूना प्राप्त करना फोन है कि मैं का उपयोग करें:
fetch(query,{
method: 'post',
headers: Utils.fetchHeaders('post')
})
.then(Utils.checkStatus)
.then(Utils.parseJSON)
.then(json => this._handleResponse(json))
.catch(error => {
this.setState({
votingError: 'Sorry, there was an error!',
loading: false
});
});
और एपीआई अंत बिंदु निम्न स्वरूप में है:
किसी भी मदद की सराहना की।
ऐसा लगता है कि मेरा एंडपॉइंट जो डिजिटल सागर बूंद है, आईपीवी 6 नेटवर्क से कनेक्शन स्वीकार नहीं करता है। हालांकि मेरा डोमेन आईपीवी 6 आईपी के साथ असाइन किया गया है। बूंद के साथ एक नेटवर्किंग मुद्दा प्रतीत होता है। मैं इस मुद्दे को हल करने के लिए डिजिटल महासागर से बात कर रहा हूं। – meteorite
ठीक है मुझे लगता है कि मैंने इसे अपने सर्वर पर आईपीवी 6 समर्थन सक्षम करके तय किया है, हालांकि मुझे समझ में नहीं आता कि मुझे ऐसा संशोधन क्यों करना है। मैं आईपीवी 6 सर्वर से केवल आईपीवी 6 सर्वर से कनेक्ट क्यों नहीं कर सकता? कोई उपाय? – meteorite
मुझे यह भी संदेह है कि fetch API आंतरिक रूप से NSURLSession का उपयोग करता है। क्योंकि यह डिफ़ॉल्ट रूप से क्यों काम नहीं करना चाहिए? ऐप्पल पक्ष पर मेरे ऐप की समीक्षा करने वाले लड़के ने कहा कि ऐप काम कर रहा था जब उसने आईपीवी 4 नेटवर्क पर स्विच किया लेकिन आईपीवी 6-केवल नेटवर्क में काम नहीं किया। शायद उनका नेटवर्क IPV4 ips को IPV6 में अनुवाद नहीं करता है या वास्तव में NSRLSession – meteorite