Rumah  >  Artikel  >  Java  >  Bagaimana untuk Memastikan Pengekodan Jenis Kandungan yang Betul dalam Spring MVC @ResponseBody Responses?

Bagaimana untuk Memastikan Pengekodan Jenis Kandungan yang Betul dalam Spring MVC @ResponseBody Responses?

Patricia Arquette
Patricia Arquetteasal
2024-10-27 20:19:01288semak imbas

How to Ensure Proper Content-Type Encoding in Spring MVC @ResponseBody Responses?

Menetapkan Jenis Kandungan Respons dalam Spring MVC melalui @ResponseBody

Apabila membangun dengan Spring MVC dan anotasi @ResponseBody, adalah penting untuk mengawal jenis kandungan respons. Dalam satu keadaan, pengguna menghadapi isu apabila respons dipaparkan dengan pengekodan ISO-8859-1 dan bukannya UTF-8 yang dikehendaki, walaupun secara eksplisit menetapkan jenis kandungan kepada UTF-8 dalam kaedah pengawal.

Penyelesaian

Untuk menyelesaikan isu ini, pengguna mendapati bahawa anotasi @ResponseBody itu sendiri menyokong penentuan jenis kandungan melalui atribut produces. Dengan menambahkan baris berikut pada kaedah pengawal, mereka dapat mentakrifkan secara eksplisit jenis kandungan respons:

<code class="java">@RequestMapping(value = "ajax/gethelp")
@ResponseBody(produces = "text/plain; charset=UTF-8")
public String handleGetHelp(Locale loc, String code, HttpServletResponse response) {
    // ...
}</code>

Konfigurasi ini membenarkan kaedah pengawal mengembalikan respons teks biasa dengan pengekodan UTF-8 , seperti yang dimaksudkan.

Nota Tambahan

Untuk pengguna yang menggunakan Spring 3.1 dan ke atas, anotasi @ResponseBody menyediakan pendekatan yang lebih mudah untuk menetapkan jenis kandungan respons berbanding dengan menggunakan strategi penukar tersuai.

Atas ialah kandungan terperinci Bagaimana untuk Memastikan Pengekodan Jenis Kandungan yang Betul dalam Spring MVC @ResponseBody Responses?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn