cb fetch
1.10.0
コールバックパターンに従う非同期 HTTP リクエストを実行するための、真のクロスブラウザおよび前方互換性のあるライブラリ。
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');
前にリストしたモジュール登録方法がいずれもサポートされていない場合は、 requestという名前のグローバル変数が公開されます。
// 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
| 財産 | デフォルト | 値 |
|---|---|---|
| 体 | ヌル | BufferSource、Blob、Document²、FormData、String、URLSearchParams、ReadableStream |
| 資格 | 「同じ起源」 | '含む'、'省略'⁶、'同じ起源' |
| ヘッダー | {} | オブジェクト、ヘッダー¶ |
| 方法 | '得る' | 弦 |
| モード | 「同じ起源」 | 'cors'、'no-cors'¹、'same-origin' |
| パスワード | ヌル | 弦 |
| パラメータ | URLSearchParams、オブジェクト、文字列 | |
| 応答メディアタイプ² | 弦 | |
| 応答タイプ | 'text'、'json'、'blob'、'document'、'arraybuffer'、'formdata'¹、'moz-blob'、'moz-chunked-arraybuffer'、'moz-chunked-text'、'msxml-書類' | |
| タイムアウト | 0 | ℕ |
| ユーザー名 | ヌル | 弦 |
| URL | location.href | 文字列、URL |
| マルチパート⁷ | 間違い | ブール値 |
| トンネリング⁵ | 間違い | ブール値 |
| XSLパターン⁴ | 間違い | ブール値 |
| 財産 | タイプ |
|---|---|
| かたまり | 文字列、ArrayBuffer、Blob、Uint8Array、null |
| 集計 | 文字列、ArrayBuffer、Blob、Uint8Array、null |
| ロード済み | ℕ |
| 合計 | ℕ |
| 長さ計算可能 | ブール値 |
| 財産 | タイプ |
|---|---|
| 体 | オブジェクト、文字列、ドキュメント、ArrayBuffer、Blob、FormData¹、ReadableStream¹、null |
| ヘッダー | 物体 |
| 実例 | XMLHttpRequest、XDomainRequest、レスポンス、AnonXMLHttpRequest |
| ステータスコード | ℕ |
| ステータステキスト | 弦 |
| URL | 弦 |
¹ フェッチのみ
² XHRのみ
3 Gecko 34 ~ 43 を除く
⁴ MSXML 3.0のみ
⁵ メソッドのオーバーライド
⁶ フェッチ、Gecko 16+、Presto/2.10.232–2.12.423
⁷ Gecko 1.7β–22
deleteES5 より前の環境では、削除メソッドでは括弧表記を使用する必要があります。
Gecko 1.9.1–20 を搭載したブラウザで、公開された応答ヘッダーをheadersプロパティに入力するには、次の条件を満たす必要があります。
Access-Control-Expose-Headers応答ヘッダー自体が公開されますAccess-Control-Expose-Headersフィールドの値が*ではありませんmode corsに設定XDomainRequest本質的な制限*または要求元のドキュメントの正確な URL のAccess-Control-Allow-Originヘッダーで応答する必要もあります。 Internet Explorer のデフォルト設定では、カスタム HTTP 応答ヘッダーを通じて P3P コンパクト ポリシー宣言が含まれていない限り、サードパーティ Cookie の使用が制限されています。したがって、Cookie が不十分であるとみなされた場合、 "include"資格情報モードは完全には受け入れられません。