2012-11-30 32 views
8

मुझे आश्चर्य हुआ कि मेरी रिंग ऐप यूटीएफ -8 की सेवा नहीं कर रहा था। मैंने इसे एक साधारण परीक्षण मामले में देखा, क्या कोई यह जानता है कि यह सुनिश्चित करने के लिए कि यह हमेशा ब्राउज़र पर utf-8 लौटाएगा?क्लोजर और अंगूठी: प्रतिक्रिया में utf-8 '?' के माध्यम से आता है

(ns utf8test.core) 

(defn app 
    [request] 
    {:status 200 :body "ɮѪϴ"}) 

project.clj में (lein रिंग प्लगइन का उपयोग):

:ring {:handler utf8test.core/app} 

टर्मिनल में:

> lein ring server 

---> ɮѪÏ' (यह गलत है, होना चाहिए ɮѪΘ)

अधिमानतः एक विधि जो टॉमकैट के लिए भी काम करती है, क्योंकि यह वह जगह है जहां ऐप तैनात किया जा रहा है।

धन्यवाद!

उत्तर

7

Content-Type शीर्षलेख सेट किए बिना, जेटी शायद प्लेटफ़ॉर्म-डिफ़ॉल्ट एन्कोडिंग को इंगित करने वाली प्रतिक्रिया भेज रहा है। उचित शीर्षलेख जोड़ने के लिए content-type or charset प्रतिक्रिया फ़ंक्शंस का उपयोग करने का प्रयास करें (उदा। (charset {:status 200 :body "..."} "UTF-8"))।

+0

ऐसा हुआ, धन्यवाद! – prismofeverything