2012-08-14 10 views
5

मुझे आश्चर्य है कि क्या निम्नलिखित विचार भावना और/या HTTP Content Negotiation और HTTP Compression के पत्र के खिलाफ काम कर रहा है।HTTP सामग्री वार्तालाप/संपीड़न: Accept-Encoding/Content-Encoding के साथ बेस 64 का उपयोग करें?

स्थिति

HTTP क्लाइंट एक रिसोर्स से अनुरोध:

HTTP GET /image.jpeg HTTP/1.1 
Accept: image/jpeg 

HTTP सर्वर रिटर्न इस संसाधन:

HTTP/1.1 200 OK 
Content-Type: image/jpeg 

आइडिया

ग्राहक सोचता है कि यह एक अच्छा विचार है संसाधन इनकोडिंग अनुरोध करने के लिए:

HTTP GET /image.jpeg HTTP/1.1 
Accept: image/jpeg 
Accept-Encoding: base64 

सर्वर सम्मान इस अनुरोध और संसाधन इनकोडिंग रिटर्न:

HTTP/1.1 200 OK 
Content-Type: image/jpeg 
Content-Encoding: base64 

प्रश्न

मैं मैं इस विचार से काफी खुश नहीं हूं। HTTP संपीड़न, जिसके लिए Accept-Encoding और Content-Encoding हेडर का उपयोग किया जाता है, लगभग डेटा संपीड़ित करता है, इसके आकार के आधार 6464 के रूप में नहीं बढ़ता है।

क्या इन शीर्षकों के लिए base64 का उपयोग इन हेडर के लिए एक मूल्य के रूप में है और HTTP सामग्री बातचीत और HTTP सामग्री संपीड़न का पत्र है?

उत्तर

6

RFC 2616 section 3.5 (जोर मेरा):

सामग्री codings और की हानि के बिना मुख्य रूप से एक दस्तावेज संकुचित करने या अन्यथा उपयोगी उसके अंतर्निहित मीडिया प्रकार की पहचान खोने के बिना तब्दील अनुमति देने के लिए उपयोग किया जाता है जानकारी।

आपका विचार पूरी तरह से HTTP की "भावना और पत्र" के अनुरूप है।

संबंधित मुद्दे