मैं OkHTTP
लाइब्रेरी का उपयोग कर HTTP request
की प्रतिक्रिया हेडर की जाँच करने की जरूरत है। डेटा लोड करने से पहले मुझे इसे अंतिम अपडेट समय की जांच करनी होगी। उस समस्या में प्रतिक्रिया प्रतिक्रिया 2 MB
है इसलिए मुझे केवल Last-Modified
शीर्षलेख प्राप्त करने की आवश्यकता है। क्या प्रोग्राम के रीस्टफुल एक्शन की गति बढ़ाने के लिए प्रतिक्रिया निकाय के बिना केवल प्रतिक्रिया शीर्षलेख लोड करना संभव है?प्रतिक्रिया हेडर OkHttp
उत्तर
आप एक HTTP HEAD अनुरोध जो केवल हेडर को पुन: प्राप्त भेज सकते हैं। आपको केवल यह जांचना होगा कि आपका सर्वर एप्लिकेशन HEAD अनुरोधों का समर्थन करता है या नहीं।
प्रमुख विधि सिवाय इसके कि सर्वर नहीं जवाब में संदेश-शरीर लौटना चाहिए पाने के लिए समान है। metainformation एक HEAD अनुरोध के जवाब में HTTP शीर्ष लेखों में निहित समान GET अनुरोध के जवाब में भेजी गई जानकारी होना चाहिए। इस विधि इकाई-शरीर में ही स्थानांतरित किए बिना अनुरोध से गर्भित संस्था के बारे में metainformation प्राप्त करने के लिए इस्तेमाल किया जा सकता। यह विधि अक्सर वैधता, अभिगम्यता, और हालिया संशोधन के लिए हाइपरटेक्स्ट लिंक का परीक्षण करने के लिए उपयोग की जाती है। OkHttp के लिए
(http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)
उदाहरण:
String url = ...
Request request = new Request.Builder().url(url).head().build();
प्रतिक्रिया शरीर स्ट्रीम किया गया है, तो आप नियमित रूप से अनुरोध कर सकते हैं शीर्ष लेख कैसे पढ़ें, और फिर या नहीं, शरीर का उपभोग करने का फैसला। यदि आप शरीर नहीं चाहते हैं, तो आप बिना किसी अपशिष्ट के close()
कर सकते हैं।
सर्वर के लिए एक मामूली लागत एक प्रतिक्रिया छोड़ दिया जा सकता है कि सेवा करने के लिए नहीं है। लेकिन कुल लागत HEAD
बनाने के बाद और फिर GET
अनुरोध करने से कम होगी, जब तक कि आप अनुरोधों का एक महत्वपूर्ण अंश (कहें> 9 0%) छोड़ने की अपेक्षा न करें।
तो, जब मैं ** respond.body() ** को कॉल करता हूं अनुरोध केवल डाउनलोड करना शुरू होता है? – Near1999
_Almost_। इससे पहले यह पहले कुछ कीबी डाउनलोड करेगा, लेकिन जब तक आप 'response.body() 'को कॉल नहीं करते हैं, तब तक यह बहुत अधिक डाउनलोड नहीं होगा। –
- 1. स्ट्रीमिंग okhttp प्रतिक्रिया शरीर
- 2. OKHttp
- 3. okhttp
- 4. okhttp
- 5. AngularJS प्रतिक्रिया हेडर $ http
- 6. ब्राउज़र प्रतिक्रिया हेडर
- 7. क्यों उपयोग रेट्रोफिट जब हम OkHttp साथ OkHttp
- 8. रिस्पांस (रेट्रोफिट/OkHttp क्लाइंट)
- 9. Okhttp प्रमाणीकरण multithreading
- 10. एंड्रॉइड पर मूल और okhttp प्रतिक्रिया - उपयोगकर्ता-एजेंट
- 11. एंड्रॉयड - OkHttp इंटरसेप्टर - प्रतिक्रिया पहले से ही "भस्म"
- 12. एंड्रॉयड OKHttp
- 13. प्रतिक्रिया हेडर मेटा टैग वी.एस.
- 14. OkHttp 2.2 और इंटरसेप्टर
- 15. OkHttp gzip post body
- 16. RoboSpice okhttp अपवाद
- 17. एंड्रॉइड Okhttp asynchronous कॉल
- 18. RxJava और Okhttp
- 19. फ़िल्टर में प्रतिक्रिया में हेडर जोड़ना?
- 20. निकालें सर्वर की जानकारी और प्रतिक्रिया हेडर
- 21. हेडर के साथ सिनात्रा स्ट्रीमिंग प्रतिक्रिया
- 22. एचटीएमएल प्रतिक्रिया संशोधित करें (हेडर नहीं)
- 23. okhttp एप्लिकेशन स्तर OkHttpClient इंस्टेंस
- 24. जर्सी/JAX-RS: प्रतिक्रिया हेडर के बजाय chunked स्थानांतरण एन्कोडिंग
- 25. ASP.NET कोर Middleware के लिए प्रतिक्रिया हेडर जोड़े
- 26. कोणीय 2 एचटीपी प्रतिक्रिया अनुपलब्ध हेडर कुंजी/मान
- 27. लैरवेल प्रतिक्रिया कैश-कंट्रोल हेडर में हमेशा 'नो-कैश'
- 28. प्रतिक्रिया। रीडायरेक्ट स्ट्रिप्स हेडर रेफरर - इसे वापस जोड़ना संभव है?
- 29. कैसे jQuery/जावास्क्रिप्ट में प्रतिक्रिया हेडर से डेटा पढ़ने
- 30. सिम्फनी अजाक्स प्रतिक्रिया कैश हेडर प्रदर्शित करता है
आप मैं कैसे कर सकते हैं कि OkHttp साथ का एक उदाहरण लिख सकते हैं? मुझे javadoc विधियों में यह नहीं मिल रहा है जो इसे संचालित करता है (( – Near1999
@ 1 999 के पास मैंने अपने जवाब में जावाडोक लिंक को सही किया। अब यह 'Request.Bilder' में 'head()' विधि को इंगित करता है। क्या इससे मदद मिलती है? – wero
I पता है कि अनुरोध कैसे बनाया जाए, मुझे नहीं पता कि ** हेड अनुरोध ** कैसे बनाया जाए, और जावाडोक ने मेरी कोई मदद नहीं की है (मुझे पता है कि अनुरोध में शीर्षलेख जोड़ने और उन्हें प्रतिक्रिया पर कैसे प्राप्त किया जाए, लेकिन मैं नहीं ' टी सर्वर से शरीर डाउनलोड किए बिना केवल हेडर प्राप्त करने के बारे में पता है। अगर आपको पता है कि कृपया कोड कोड कैसे पोस्ट करें। – Near1999