catta — это простой клиент запросов для браузера. Поддержка Fetch, AJAX, JSONP и даже создания собственного адаптера. 中文文档-请点我
catta-min.js
catta-min-comp.js
{data: HTMLFormElement}
требуется IE 10+.Рекомендуем использовать чистый вариант, если в вашем проекте уже есть этот полифилл или нет необходимости в поддержке IE.
# local install
npm install catta --save
// With ES6 - *Recommend*
import catta from 'catta' ;
catta ( 'http://some/url' ) . then ( function ( res ) {
console . log ( res ) ;
} ) ;
// With CommonJS
const catta = require ( 'catta' ) ;
// or catta.ajax or catta.jsonp or catta.fetch
catta . default ( 'http://some/url' ) . then ( function ( res ) {
console . log ( res ) ;
} ) ;
<!-- And also with <script> in HTML - *Not Recommend* -->
< script src =" ./node_modules/catta/dist/catta-min.js " > </ script >
< script >
// or catta.ajax or catta.jsonp or catta.fetch
catta . default ( 'http://some/url' ) . then ( function ( res ) {
console . log ( res ) ;
} ) ;
</ script >
import { ajax , fetch , jsonp , getScript } from 'catta' ;
/**
* make fetch/ajax/jsonp/getScript request
* @param {string} url - request url
* @param {Object} options - request options
*
*/
ajax ( url , options ) ;
// fetch request
fetch ( url , options ) ;
// jsonp request
jsonp ( url , options ) ;
// getScript
getScript ( url ) ;
Описание | Тип | По умолчанию | Принести | АЯКС | JSONP | |
---|---|---|---|---|---|---|
URL | URL запроса | нить | нулевой | в | в | в |
метод | метод запроса | строка {получить, опубликовать, положить, удалить, заголовок} | 'получать' | в | в | х |
данные | данные отправляются на сервер | строка/объект/элемент формы [3] | {} | в | в | в |
Описание | Тип | По умолчанию | Принести | АЯКС | JSONP | |
---|---|---|---|---|---|---|
тип | ограничить тип запроса | строка { выборка, ajax, jsonp, скрипт } | 'авто' | — | — | — |
тайм-аут | выдать ошибку таймаута через несколько секунд | число | 3 | ! [1] | в | ! [1] |
тип результата | тип результата | { текст, json, ответ } | текст | в | в | ! [2] |
v Поддерживается ! Частично поддерживается × Не поддерживается
Запрос Fetch и JSONP не может быть прерван, текущий тайм-аут - это просто ошибка тайм-аута.
Параметр resultType не может работать с jsonp, поскольку результатом должен быть исполняемый код JavaScript.
Поддерживается только элемент формы с функцией FormData.
Свойство | Описание | Тип | |
---|---|---|---|
jsonp | имя обратного вызова | установить собственное имя обратного вызова | нить |
принести | крест | указать, может ли запрос передаваться из перекрестного источника | логическое значение |
аякс | - | - | - |
import catta from 'catta' ;
catta ( 'http://some/url' ) . then ( function ( res ) {
console . log ( res ) ;
} ) ;
import catta from 'catta' ;
catta ( 'http://some/url' , {
type : 'jsonp' ,
data : {
page : 5 ,
count : 20
} ,
timeout : 2 ,
credential : false ,
cross : false ,
// sp. options
jsonp : {
callbackName : 'myCustomJSONP1'
}
} )
. then ( res => console . log ( res ) )
. catch ( err => console . log ( err ) ) ;
import { fetch } from 'catta' ;
// only use fetch
fetch ( 'http://some/url' , {
data : { a : 1 }
} ) . then ( function ( res ) {
console . log ( res ) ;
} ) ;
import catta from 'catta' ;
catta ( 'http://some/url' , {
headers : {
'Content-Type' : 'appliction/json'
}
} )
. then ( function ( res ) {
console . log ( res ) ;
} ) ;
import { globalConfig } from 'catta' ;
// set global config, it will work for each request
globalConfig ( {
timeout : 10
} ) ;
Пользовательский адаптер — это просто объект, который имеет функцию detector
и processor
Эта функция используется для создания оболочки по вашему специальному запросу и позволяет catta
обрабатывать ее. Более подробную информацию см. в примере адаптера mtop.
import { customAdapter } from 'catta' ;
import mtopAdapter from 'catta/lib/custom/mtop' ;
// set mtop adapter
customAdapter ( 'mtop' , mtopAdapter ) ;
options.type
Лицензия MIT