2009-10-30 13 views
8

का उपयोग कर सामग्री-प्रकार मान I jQuery के AJAX फ़ंक्शन का उपयोग करके HTTP अनुरोध शीर्षलेख सामग्री को ओवरराइड करने का प्रयास किया। ऐसा लगता है कि इसमैं jQuery अनुरोध शीर्षलेख नहीं बदल सकता jQuery

$.ajax({ 
    type : "POST", 
    url : url, 
    data : data, 
    contentType: "application/x-www-form-urlencoded;charset=big5", 
    beforeSend: function(xhr) { 
     xhr.setRequestHeader("Accept-Charset","big5"); 
     xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=big5"); 
    }, 
    success: function(rs) { 
    target.html(rs); 
    } 
}); 

Content-Type हैडर तरह डिफ़ॉल्ट करने के लिए है "अनुप्रयोग/x-www फार्म-urlencoded; charset = UTF-8" है, लेकिन यह स्पष्ट रूप से मैं कोई बात नहीं मैं का उपयोग अपने मूल्य ओवरराइड नहीं कर सकते 'कंटेंट टाइप' या 'फर्स्टसेन्ड' दृष्टिकोण। क्या कोई मुझे एक संकेत बता सकता है कि मैं HTTP अनुरोध के सामग्री-प्रकार मान को कैसे बदल सकता हूं या नहीं? बहुत बहुत धन्यवाद।

बीटीडब्ल्यू, क्या कोई अच्छा दस्तावेज है कि मैं जावास्क्रिप्ट के XMLHttpRequest के एन्कोडिंग हैंडलिंग का अध्ययन कर सकता हूं?

+0

http://stackoverflow.com/questions/1145588/cannot-properly-set-the-accept-http-header-with-jquery, इस पर एक डुप्लिकेट प्रश्न देखें। –

+0

@ जिम: वास्तव में नहीं; कि अन्य क्यू स्वीकृति हेडर के बारे में है, सामग्री प्रकार को सेट करने के बारे में नहीं। –

+0

jQuery AJAX दस्तावेज़ से: डेटा हमेशा यूटीएफ -8 वर्णसेट का उपयोग कर सर्वर पर प्रेषित किया जाएगा; आपको सर्वर पक्ष पर उचित रूप से इसे डीकोड करना होगा। http://api.jquery.com/jQuery.ajax/ – Bkress

उत्तर

0

क्या आपने w3.org दस्तावेज़ीकरण की जांच की है? Accept-Charset शीर्षलेख का उपयोग करने में कुछ सीमा दिखाई देती है। http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader-method

+0

धन्यवाद, लेकिन यहां तक ​​कि स्वीकार्य-वर्णमाला हटा दी गई है, समस्या वही बना है। – Matt

2

jQuery दस्तावेज़ों के अनुसार, वर्णसेट हमेशा यूटीएफ -8: http://jqapi.com/#p=jQuery.ajax होगा। मुझे लगता है कि यह स्वीकार-कर्सेट के लिए भी जाता है।

बिग 5 यूटीएफ -8 का सबसेट है, है ना? इसलिए इसे सर्वर-साइड एन्कोड और डीकोड करना संभव होना चाहिए।

+1

[नाइटपिकिंग] नहीं, बिग 5 यूटीएफ -8 का उप-समूह नहीं है, लेकिन यह यूनिकोड का उप-समूह भी हो सकता है। –

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