Rumah >hujung hadapan web >tutorial js >Bagaimanakah saya Boleh MENYIArkan Data JSON Menggunakan API Ambil?

Bagaimanakah saya Boleh MENYIArkan Data JSON Menggunakan API Ambil?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-11 02:57:14313semak imbas

How Can I POST JSON Data Using the Fetch API?

Menyiarkan Data JSON dengan API Ambil

Adalah amalan biasa untuk menghantar data JSON menggunakan jenis permintaan POST. Anda boleh melakukan ini dengan API Ambil JavaScript, yang menyediakan antara muka yang berkuasa untuk membuat permintaan HTTP.

Satu kaedah menghantar data JSON melalui API Ambil adalah dengan memasukkan objek JSON sebagai isi permintaan. Untuk melakukan ini, tukar objek JSON kepada rentetan menggunakan JSON.stringify():

const body = JSON.stringify({a: 1, b: 2});

Kemudian, lampirkan objek bertali ini pada badan permintaan:

fetch("/echo/json/", {
    method: "POST",
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    },
    body: body
})
.then(res => console.log(res))
.catch(res => console.log(res));

Walau bagaimanapun, ini kaedah mungkin tidak berfungsi dalam kes tertentu, terutamanya apabila menggunakan alat pembangunan seperti gema JSON jsfiddle. Sebagai alternatif, anda boleh menggunakan sintaks async/menunggu ES2017 untuk mengendalikan muatan 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);
})();

Kaedah ini menukar respons kepada objek JSON, yang boleh ditanya dan diproses dengan lebih berkesan dalam kod anda.

Atas ialah kandungan terperinci Bagaimanakah saya Boleh MENYIArkan Data JSON Menggunakan API Ambil?. 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