Dapatkan: Pindahkan data JSON
P粉348915572
P粉348915572 2023-08-20 11:57:23
0
2
549
<p>Saya cuba MENYIArkan objek JSON menggunakan kaedah ambil. </p> <p>Menurut pemahaman saya, saya perlu menambahkan objek bertali pada badan permintaan, contohnya: </p> <pre class="brush:js;toolbar:false;">fetch("/echo/json/", { tajuk: { 'Terima': 'aplikasi/json', 'Content-Type': 'application/json' }, kaedah: "POST", badan: JSON.stringify({a: 1, b: 2}) }) .then(function(res){ console.log(res) }) .catch(function(res){ console.log(res) }) </pra> <p>Apabila menggunakan gema JSON jsfiddle, saya ingin dapat melihat objek yang saya hantar (<kod>{a: 1, b: 2}</code>), tetapi ini tidak berlaku - Pembangunan Chrome Alat ini tidak menunjukkan JSON sebagai sebahagian daripada permintaan, yang bermaksud ia tidak dihantar. </p>
P粉348915572
P粉348915572

membalas semua(2)
P粉458725040

Saya rasa masalah anda adalah jsfiddle只能处理form-urlencoded请求。但是正确的方法是将正确的jsonlulus sebagai badan permintaan:

fetch('https://httpbin.org/post', {
  method: 'POST',
  headers: {
    'Accept': 'application/json, text/plain, */*',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({a: 7, str: 'Some string: &=&'})
}).then(res => res.json())
  .then(res => console.log(res));
P粉819937486

Cara menggunakan data ES2017 async/await支持,这是如何进行POST JSON:

(async () => {
  const rawResponse = await fetch('https://httpbin.org/post', {
    method: 'POST',
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({a: 1, b: 'Textual content'})
  });
  const content = await rawResponse.json();

  console.log(content);
})();
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan