cb fetch
1.10.0
コールバックパターンに従う非同期 HTTP リクエストを実行するための、真のクロスブラウザおよび前方互換性のあるライブラリ。
npm install --save cb-fetch
yarn add cb-fetch
jspm install cb-fetch
bower 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 ( ) ;
fetch
XMLHttpRequest
XDomainRequest
(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
delete
ES5 より前の環境では、削除メソッドでは括弧表記を使用する必要があります。
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"
資格情報モードは完全には受け入れられません。