मेरे पास मेरे वेबसर्वर में एक फ़ाइल है और मैं इसे अपने ऐप पर डाउनलोड कर रहा हूं हर बार जब मैं इसे एक्सेस करता हूं क्योंकि यह संभव है कि फ़ाइल सामग्री बदली जा सकती है लेकिन यदि यह बदली गई है मैं उस समय डाउनलोड करना चाहूंगा, इसलिए बैंडविड्थ को बचाया जा सकता है और सौभाग्य से यह है कि यह ETag और यदि कोई नहीं- मैचशीर्षलेख फ़ील्ड के लिए हैं।ईटाग और यदि-कोई नहीं-मिलान HTTP शीर्षलेख काम नहीं कर रहे हैं
- जब मैं एक अनुरोध पहली बार बनाने के लिए, मैं ETag HTTP प्रतिसाद शीर्षलेख
अनुवर्ती अनुरोधों में से उस फ़ाइल मैं था डाउनलोड करने के लिए पुनः प्राप्त Etagके लिए मूल्य संलग्न करें यदि कोई-नहीं-मैच हेडरफ़ील्ड ताकि कोई परिवर्तन न हो तो मुझे HTTP प्रतिक्रिया स्थिति कोड 304 मिलेगा या फिर फ़ाइल में कोई बदलाव होने पर मुझे 200 मिलेंगे।
नोट:
जब मैं क्रोम में उन्नत बाकी ग्राहक आवेदन में ऊपर के चरणों की कोशिश यह ठीक काम करता है के रूप में यह माना जाता है लेकिन जब मैं में है कि कोशिश आईओएस मुझे हमेशा प्रतिक्रिया कोड 200 मिलता है लेकिन इसे बाद के अनुरोधों के लिए मुझे 304 देना चाहिए था। वैकल्पिक ({URL: http://10.12.1.101/Etag/ringtone1.mp3} {स्थिति कोड: 200, हेडर { "Accept-
यहाँ मैं का उपयोग
var request1 = NSMutableURLRequest(URL:NSURL(string: "http://10.12.1.101/Etag/ringtone1.mp3")!)
let Etagvalue="\"36170-52c1cc36d9b40\""
var session1 = NSURLSession.sharedSession()
request1.HTTPMethod = "GET"
var err: NSError?
request1.addValue(Etagvalue, forHTTPHeaderField: "If-None-Match")
var task = session1.dataTaskWithRequest(request1, completionHandler: {data, response, error -> Void in
print("response: \(response)")
})
यहाँ प्रतिक्रिया
प्रतिक्रिया है नमूना कोड है रेंज "= बाइट्स; कनेक्शन =" Keep-Alive "; " सामग्री-लंबाई "= 221552; " सामग्री-प्रकार "=" ऑडियो/एमपीईजी "; दिनांक =" बुध, 24 फ़रवरी 2016 14:57:53 GMT"; Etag = "\" 36170-52c1cc36d9b40 \ ""; "Keep-Alive" = "टाइमआउट = 5, अधिकतम = 100"; "अंतिम संशोधित" = "शुक्र, 1 9 फरवरी 2016 10:15:33 जीएमटी"; सर्वर = "अपाचे/2.4.16 (यूनिक्स) PHP/5.5.29"; }})
मैं यहां क्या गलत कर रहा हूं?
हमें उत्पन्न अनुरोध दिखाएं। जैसे प्रॉक्सी सर्वर का उपयोग करना (उदा। चार्ल्स) –
@ दाईज-दंजन - अचानक यह काम करना शुरू कर दिया! मैं अनुमान नहीं लगा सका कि यह असंगतता क्यों! –
@ दाईज-दजन - क्या ई-टैग के लिए ..server side कॉन्फ़िगरेशन के अलावा काम करने की कोई निर्भरता है? मेरी उंगलियां अभी भी पार हो गई हैं कि यह कैसे काम करना शुरू कर दिया? –