मैं प्रति-अनुरोध के आधार पर रीडायरेक्ट (या नहीं) का पालन करने के लिए अलामोफ़ीयर को कॉन्फ़िगर करने का प्रयास कर रहा हूं।अलामोफायर: HTTP रीडायरेक्ट का पालन करें (या नहीं)
अलामोफ़ीयर का निजी आंतरिक वर्ग SessionDelegate
है जो वर्तमान URL सत्र के लिए NSURLSessionTaskDelegate
के रूप में कार्य करता है। SessionDelegate
प्रासंगिक प्रतिनिधि विधि, URLSession(session:, task:, willPerformHTTPRedirection response:, request:, completionHandler:)
लागू करता है जो वास्तव में मैं चाहता हूं।
इससे भी बेहतर, प्रतिनिधि का कार्यान्वयन taskWillPerformHTTPRedirection
नामक कस्टम वैरिएबल क्लोजर का अनुपालन करता है ताकि यह निर्धारित किया जा सके कि रीडायरेक्ट को कैसे संभालना है - फिर से, बिल्कुल वही है जो मैं चाहता हूं!
और जहां तक मैं कह सकता हूं, यह बंद हमेशा डिफ़ॉल्ट रूप से nil
होता है - इसे आंतरिक रूप से अलामोफ़ीयर द्वारा असाइन नहीं किया जाता है - जो बताता है कि यह उपयोगकर्ता को इसे बंद करने का इरादा है।
समस्या: मैं taskWillPerformHTTPRedirection
चर के बंद होने के लिए इस निजी SessionDelegate
कक्षा तक नहीं पहुंच सकता। यह एक निजी वर्ग है और यह मेरी स्विफ्ट फाइलों के लिए दृश्यमान नहीं है। अलामोफायर अनुरोध को कॉन्फ़िगर करने का उचित माध्यम क्या नहीं है (नहीं) रीडायरेक्ट का पालन करें?
AFnetworking HTTP मानकों का सम्मान करता है Alamofire के रूप में के बारे में पढ़ने के लिए अच्छा है। तो मुझे लगता है कि यह स्वचालित रूप से रीडायरेक्ट का पालन करता है। मुझे पता है क्योंकि मैंने पहले डोमेन बदल दिए हैं और ऐप रीडायरेक्ट का पालन करेगा बिना किसी समस्या के। – eddwinpaz
एफ़नेटवर्किंग को रीडायरेक्ट का पालन न करने के लिए कॉन्फ़िगर किया जा सकता है। अलामोफायर निश्चित रूप से ऐसा करने की नींव रखता है। –
जैसा कि अलामोफायर इतना कोड नहीं है और काफी युवा पुस्तकालय है, मैं केवल लाइब्रेरी को फोर्क करता हूं और कार्यवाही का उपयोग करके कार्यक्षमता को कार्यान्वित करता हूं जैसा कि आपने सही ढंग से देखा है। फिर बस एक पीआर जमा करें। ऐसा लगता है कि @mattt शुरुआत से ही उन हुक को वहां रखता है भले ही उन्हें अभी तक अलामोफ़ीयर सार्वजनिक एपीआई द्वारा उपयोग नहीं किया जाता है। –