2011-12-15 14 views
8

मेरे पास एक ऐप है जिसे वेब पर सामग्री के लिए बार-बार अनुरोध करने की आवश्यकता है। अब सर्वर साइड कार्यान्वयन हेडर का उपयोग कर http कैशिंग के मानकों का पालन करता है। मैं सोच रहा था कि क्या एचटीपी क्लाइंट या एक अन्य टूल का विस्तारित संस्करण है जो प्रतिक्रियाओं को संग्रहित करेगा और स्वचालित कैशिंग के लिए हेडर के साथ बातचीत करेगा। यदि कोई भी ठीक नहीं है, तो मैं इसे लागू करने के लिए बस छोड़ना चाहूंगा यदि वहां पहले से कोई उपकरण है।क्या कोई HttpClient है जो कैशिंग अनुरोधों को स्वयं ही संभालता है?

धन्यवाद

उत्तर

9

अपाचे एचटीपी क्लाइंट 4.1 से CachingHttpClient पेश करता है, लेकिन एंड्रॉइड में केवल 4.0.x डिफ़ॉल्ट रूप से शामिल है और भविष्य में एचटीपी क्लाइंट को बनाए रखेगा। मेरे दृष्टिकोण से, मुझे कोई बाधा दिखाई नहीं देती है जो हमें मैन्युअल रूप से आयात और एंड्रॉइड एसडीके के साथ उपयोग करने से रोकती है। के रूप में अपने आधिकारिक ब्लॉग में कहा गया है

तरह से सिफारिश की, HttpURLConnection उपयोग करने के लिए है here

संपादित करें:

एक अच्छा ट्यूटोरियल here
डाउनलोड पृष्ठ here
अपनी आधिकारिक वेबसाइट here से एक नोट:

जीवन का अंत
कॉमन्स एचटीपी क्लाइंट परियोजना अब जीवन का अंत है, और अब विकसित नहीं किया जा रहा है। इसे अपाचे एचटीपी कॉम्पोनेंट्स प्रोजेक्ट द्वारा अपने एचटीपी क्लाइंट और एचटीपीकोर मॉड्यूल में बदल दिया गया है, जो बेहतर प्रदर्शन और अधिक लचीलापन प्रदान करता है।

गुड लक, मैं कई महीने पहले एक त्वरित कोशिश की थी, लेकिन यह काफी सफल (यह केवल मानक वेब सर्वर पोर्ट 80 पर चल रहा है, अपने कस्टम एक के साथ नहीं के साथ काम लगता है) नहीं मिला।

+0

कैशिंगHttpClient जो मैं चाहता हूं उसके लिए बिल्कुल सही दिखता है। मैं एक जार के लिए चारों ओर देख रहा था लेकिन शामिल करने के लिए एक नहीं मिल सकता है। क्या आप सभी आवश्यक फाइलों के लिए स्रोत ढूंढने और बस उन्हें अपने ऐप में जोड़ने का सुझाव देंगे? – Bobbake4

+0

@ बॉबबेक 4, मेरा अपडेट देखें। – yorkw

+1

धन्यवाद अगर मैं स्मृति में कैश करता हूं तो यह सही काम कर रहा है। अब मैं डिस्क पर कैश लिखने के लिए एक HttpCacheStorage को लागू करने का प्रयास कर रहा हूं। मैं मुद्दों में भाग रहा हूं क्योंकि भले ही HttpCacheEntry Serializable लागू करता है, जब लिखने के लिए ऑब्जेक्ट कॉल किया जाता है तो यह क्रमबद्ध करने में विफल रहता है। मैं इसे दूसरे प्रश्न पर ले जा रहा हूं क्योंकि मुझे लगता है कि आपने मेरे मूल का जवाब दिया है, धन्यवाद। – Bobbake4

1

अगर मैं सही ढंग याद गूगल डाटा पुस्तकालय से एक है। यकीन नहीं है कि यह हेडर के साथ बातचीत करता है।