Cara Membuat Permintaan HTTP di JavaScript
- 1571
- 345
- Chris Little I
'Xmlhttprequest'
dan 'ambil()'
Adakah dua fungsi kuat dalam JavaScript yang boleh digunakan untuk membuat panggilan Ajax. Xmlhttprequest (xhr) adalah teknologi warisan yang sudah ada sejak hari -hari awal web. Ia membolehkan anda membuat permintaan HTTP dari sisi klien, dan ia masih digunakan secara meluas hari ini. Sementara itu, fungsi pengambilan (), adalah tambahan yang lebih baru kepada JavaScript yang perlahan -lahan mengambil alih sebagai cara pilihan untuk membuat panggilan Ajax. Ia menggunakan janji, jadi lebih mudah untuk menulis dan debug, dan ia juga menyokong aliran dan ciri -ciri moden yang lain.
Kedua -dua xmlhttprequest dan ambil () adalah alat yang hebat untuk membuat panggilan ajax, tetapi mengambil () umumnya dianggap pilihan yang lebih baik untuk kebanyakan aplikasi. Oleh itu, jika anda mencari jalan untuk membuat panggilan Ajax di JavaScript, beri cubalah. Kami fikir anda akan terkejut dengan hasilnya!
Buat permintaan HTTP di JavaScript
Berikut adalah contoh menggunakan Xmlhttprequest untuk membuat a Dapatkan Permintaan untuk mendapatkan data dari API Jauh:
const xhr = new XmlHttPrequest (); xhr.responseType = 'json'; xhr.onreadyStateChange = () => if (xhr.ReadyState === XMLHTTPREQUEST.Selesai) konsol.log (xhr.respons); xhr.buka ('get', 'https: // api.Contoh.com/'); xhr.setRequestHeader ('kebenaran', 'pembawa' + api_key); xhr.hantar ();123456789101112 | const xhr = new XmlhttPrequest (); xhr.responseType = 'json'; xhr.onreadyStateChange = () => if (xhr.ReadyState === XMLHTTPREQUEST.Selesai) konsol.log (xhr.respons); xhr.buka ('get', 'https: // api.Contoh.com/'); xhr.setRequestHeader ('kebenaran', 'pembawa' + api_key); xhr.hantar (); |
Berikut adalah contoh menggunakan ambil() untuk membuat a Dapatkan Permintaan untuk mendapatkan data dari API jauh.
Ambil ('https: // api.Contoh.com/', headers: ' kebenaran ':' pembawa ' + api_key) .Kemudian (respons => respons.json ()) .Kemudian (data => konsol.log (data));1234567 | Ambil ('https: // api.Contoh.com/', headers: ' kebenaran ':' pembawa ' + api_key) .Kemudian (respons => respons.json ()) .Kemudian (data => konsol.log (data)); |
Kedua -dua contoh menganggap bahawa anda mempunyai kunci API yang disimpan dalam pembolehubah yang dipanggil API_KEY.
Anda juga boleh menggunakan ambil() untuk membuat jenis permintaan HTTP yang lain, seperti Jawatan, LETAK, dan Padam, dengan meluluskan objek pilihan sebagai hujah kedua. Sebagai contoh:
Ambil ('/url', method: 'post', body: json.stringify (name: 'John', umur: 30,), tajuk: 'content-type': 'application/json',,);12345678910 | Ambil ('/url', method: 'post', body: json.stringify (name: 'John', umur: 30,), tajuk: 'content-type': 'application/json',,); |
Perhatikan bahawa 'Xmlhttprequest'
dan 'ambil()'
tidak segerak, yang bermaksud bahawa kod itu tidak akan menyekat semasa permintaan dibuat. Sebaliknya, respons akan diproses dalam fungsi panggil balik atau dengan janji.