Pustaka yang benar-benar kompatibel dengan pendayung lintas dan penerusan untuk melakukan permintaan HTTP asinkron yang mengikuti pola panggilan balik .
npm install --save cb-fetchyarn add cb-fetchjspm install cb-fetchbower install --save cb-fetch< script src = " //cdn.jsdelivr.net/combine/npm/@string/isstring/isString.min.js,npm/cb-fetch/index.min.js " type = " text/javascript " ></ script >
define(function (require) {
var request = require('cb-fetch');
});
var request = require('cb-fetch')['default'];
var request = require('cb-fetch');
YUI({
modules: { 'is-string': 'path/to/@string/isstring.js' }
}).use('is-string', 'cb-fetch', function (Y) {
var request = Y['default'];
});
import request = require('cb-fetch');
Jika tidak ada metode registrasi modul yang terdaftar sebelumnya yang didukung, variabel global bernama request akan ditampilkan.
// here's your typical request
request ( 'http://www.example.com?key1=value1&key2=value2' )
. done ( response => { /* … */ } ) ;
// taking a comprehensive approach is encouraged though
request ( )
. get ( 'http://www.example.com' )
. query ( 'key1=value1&key2=value2' )
. done ( onSuccessCallback , onErrorCallback ) ;
// passing an object offers options not available otherwise
let abort = request ( {
url : new URL ( 'http://www.example.com' ) ,
parameters : new URLSearchParams ( '_csrf=TOKEN' ) ,
mode : 'cors' ,
credentials : 'include' ,
responseType : 'json'
} ) . get ( '/segment' )
. query ( { foo : [ 'bar' , 'qux' ] } )
. pass ( 'Content-Type' , 'application/json' )
. hook ( 'download' , e => { /* … */ } )
. done ( {
success : onSuccessCallback ,
error : onErrorCallback ,
abort : onAbortCallback
} ) ;
// forcefully aborts the request
abort ( ) ; fetchXMLHttpRequestXDomainRequest (Options.url?) => Object
(Options.parameters?) => Object
(Options.body?) => Object
('loadstart', () => Boolean | Void) => Object
('download', Object => Any) => Object
('loadend', () => Any) => Object
{
(name: String, value: String),
(headers: Object | Headers)
} => Object
// assigns
. pass ( new Headers ( { key : 'value' } ) )
// appends
. pass ( { key : 'value' } )
// sets
. pass ( 'key' , 'value' ) {
(onSuccess?: Function, onError?: Function),
({
success?: Function,
error?: Function,
timeout?: Function,
abort?: Function
})
} => () => Void,
throws: TypeError
| Milik | Bawaan | Nilai |
|---|---|---|
| tubuh | batal | BufferSource, Blob, Document², FormData, String, URLSearchParams, ReadableStream |
| kredensial | 'asal yang sama' | 'sertakan', 'hilangkan'⁶, 'asal yang sama' |
| header | {} | Objek, Header³ |
| metode | 'MENDAPATKAN' | Rangkaian |
| mode | 'asal yang sama' | 'cors', 'no-cors'¹, 'asal yang sama' |
| kata sandi | batal | Rangkaian |
| parameter | URLSearchParams, Objek, String | |
| responsMediaType² | Rangkaian | |
| tipe respons | 'teks', 'json', 'blob', 'dokumen', 'arraybuffer', 'formdata'¹, 'moz-blob', 'moz-chunked-arraybuffer', 'moz-chunked-text', 'msxml- dokumen' | |
| batas waktu | 0 | ℕ |
| nama belakang | batal | Rangkaian |
| url | lokasi.href | Tali, URL |
| multibagian⁷ | PALSU | Boolean |
| terowongan⁵ | PALSU | Boolean |
| Pola XSL⁴ | PALSU | Boolean |
| Milik | Jenis |
|---|---|
| bingkah | String, ArrayBuffer, Gumpalan, Uint8Array, null |
| agregat | String, ArrayBuffer, Gumpalan, Uint8Array, null |
| sarat | ℕ |
| total | ℕ |
| panjangnya Dapat dihitung | Boolean |
| Milik | Jenis |
|---|---|
| tubuh | Objek, String, Dokumen, ArrayBuffer, Blob, FormData¹, ReadableStream¹, null |
| header | Obyek |
| contoh | XMLHttpRequest, XDomainRequest, Respon, AnonXMLHttpRequest |
| kode status | ℕ |
| statusTeks | Rangkaian |
| url | Rangkaian |
¹ ambil saja
² XHR saja
³ kecuali Tokek 34–43
⁴ MSXML 3.0 saja
⁵ penggantian metode
⁶ ambil, Gecko 16+, Presto/2.10.232–2.12.423
⁷ Tokek 1.7β–22
delete kata kunci yang dipesanDi lingkungan pra-ES5, metode penghapusan memerlukan penggunaan notasi braket.
Agar browser yang diberdayakan oleh Gecko 1.9.1–20 memiliki header respons terbuka yang diisi ke dalam properti headers , ketentuan berikut harus dipenuhi:
Access-Control-Expose-Headers memperlihatkan dirinya sendiriAccess-Control-Expose-Headers bukan *mode disetel ke corsXDomainRequestAccess-Control-Allow-Origin * atau URL persis dari dokumen yang meminta Pengaturan default Internet Explorer membatasi penggunaan cookie pihak ketiga kecuali deklarasi kebijakan ringkas P3P telah disertakan melalui header respons HTTP khusus; oleh karena itu, mode kredensial "include" tidak dapat diterapkan sepenuhnya jika cookie dianggap tidak memuaskan.