Rumah  >  Artikel  >  Java  >  Mengapa Mengalih Keluar \"charset=utf8\" daripada \"Content-Type\" Membetulkan Ralat HTTP 415 \"Jenis Media Tidak Disokong\" Semasa Menghantar Permintaan JSON?

Mengapa Mengalih Keluar \"charset=utf8\" daripada \"Content-Type\" Membetulkan Ralat HTTP 415 \"Jenis Media Tidak Disokong\" Semasa Menghantar Permintaan JSON?

Susan Sarandon
Susan Sarandonasal
2024-11-03 04:05:03227semak imbas

Why Does Removing

Ralat Jenis Media Tidak Disokong HTTP 415 Semasa Menghantar Permintaan JSON

Apabila cuba untuk melaksanakan perkhidmatan REST dengan permintaan JSON, pengguna menghadapi Ralat "Jenis Media Tidak Disokong" HTTP 415. Walaupun menetapkan jenis kandungan permintaan kepada "application/json; charset=utf8," ia hanya berfungsi apabila tiada objek JSON disertakan dalam permintaan.

Menggunakan perpustakaan google-gson-2.2.4 dan bereksperimen dengan berbeza Pustaka JSON terbukti tidak berkesan.

Coretan kod berikut menggambarkan pelaksanaan:

<code class="java">// Code snippet removed for brevity</code>

Memeriksa nilai requestJson.toString(), yang mewakili badan JSON:

<code class="json">{"type":"arl","action":"remove","domain":"staging","objects":"http://www.example.com"}</code>

Penyelesaian:

Anehnya, mengalih keluar "charset=utf8" daripada sifat permintaan "Content-Type" ("Content-Type", "application/json; charset=utf8" ) menyelesaikan isu ini secara ajaib.

<code class="java">// Removed "charset=utf8" from "Content-Type"
con.setRequestProperty("Content-Type", "application/json");
// Code snippet continues removed for brevity</code>

Sebab sebenar perubahan ini masih tidak diketahui, tetapi ia secara berkesan membenarkan permintaan JSON dihantar dan diproses dengan jayanya.

Atas ialah kandungan terperinci Mengapa Mengalih Keluar \"charset=utf8\" daripada \"Content-Type\" Membetulkan Ralat HTTP 415 \"Jenis Media Tidak Disokong\" Semasa Menghantar Permintaan JSON?. 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