ใครกำหนดประเภทเนื้อหาการตอบกลับใน Spring MVC (@ResponseBody)
ฉันมีแอปพลิเคชันเว็บ Spring MVC Java ที่ใช้ Annotation ซึ่งทำงานบนเว็บเซิร์ฟเวอร์ของท่าเทียบเรือ (ปัจจุบันอยู่ในปลั๊กอินท่าเทียบเรือ maven) ฉันกำลังพยายามสนับสนุน AJAX ด้วยวิธีการควบคุมเดียวที่ส่งคืนข้อความช่วยเหลือเพียงสตริง ทรัพยากรอยู่ในการเข้ารหัส UTF-8 ดังนั้นสตริงก็เช่นกัน แต่การตอบสนองของฉันจากเซิร์ฟเวอร์มาพร้อมกับ content-encoding: text/plain;charset=ISO-8859-1 แม้ว่าเบราว์เซอร์ของฉันจะส่ง Accept-Charset windows-1250,utf-8;q=0.7,*;q=0.7 ฉันใช้การกำหนดค่าเริ่มต้นของสปริง ฉันพบคำใบ้ในการเพิ่ม bean นี้ในการกำหนดค่า แต่ฉันคิดว่ามันไม่ได้ใช้เพราะมันบอกว่ามันไม่รองรับการเข้ารหัสและใช้ค่าเริ่มต้นแทน <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes" value="text/plain;charset=UTF-8" /> </bean> รหัสคอนโทรลเลอร์ของฉันคือ (โปรดทราบว่าการเปลี่ยนแปลงประเภทการตอบกลับนี้ใช้ไม่ได้สำหรับฉัน): @RequestMapping(value = "ajax/gethelp") public @ResponseBody String handleGetHelp(Locale loc, String code, HttpServletResponse response) { log.debug("Getting help …