注意:
代码同步来源地址:http://223.99.22.139:18091/jxcdchgp/sdk_js.git
将同步过来的代码复制到src下
rabbit 封装的 ajax 访问插件
Install
``
$ npm install rabbit-sdk --save
`
Usage
`
js
const rabbit = require('rabbit-sdk')
// Make a request for a user with a given ID
rabbit
.get('/user?ID=12345')
.then(function (response) {
// handle success
console.log(response)
})
.catch(function (error) {
// handle error
console.log(error)
})
.finally(function () {
// always executed
})
// Optionally the request above could also be done as
rabbit
.get('/user', {
params: {
ID: 12345,
},
})
.then(function (response) {
console.log(response)
})
.catch(function (error) {
console.log(error)
})
.finally(function () {
// always executed
})
`
Performing a POST
request
`
js
rabbit
.post('/user', {
firstName: 'Fred',
lastName: 'Flintstone',
})
.then(function (response) {
console.log(response)
})
.catch(function (error) {
console.log(error)
})
rabbit
.post(
'/user',
{
firstName: 'Fred',
lastName: 'Flintstone',
},
{
params: {
ID: 12345,
},
}
)
.then(function (response) {
console.log(response)
})
.catch(function (error) {
console.log(error)
})
`
rabbit API
Requests can be made by passing the relevant config to rabbit
.
##### rabbit(config)
`
js
// Send a POST request
rabbit.ajax({
method: 'post',
url: '/user/12345',
data: {
firstName: 'Fred',
lastName: 'Flintstone',
},
})
`
`
js
// GET request for remote image
rabbit
.ajax({
method: 'get',
url: 'http://bit.ly/2mTM3nY',
responseType: 'stream',
})
.then(function (response) {
response.data.pipe(fs.createWriteStream('ada_lovelace.jpg'))
})
`
For convenience aliases have been provided for all supported request methods.
##### rabbit.ajax(config)
##### rabbit.get(url[, config])
##### rabbit.delete(url[, config])
##### rabbit.head(url[, config])
##### rabbit.options(url[, config])
##### rabbit.post(url[, data[, config]])
##### rabbit.put(url[, data[, config]])
##### rabbit.patch(url[, data[, config]])
Request Config
These are the available config options for making requests. Only the url
is required. Requests will default to GET
if method
is not specified.
`
js
{
// url
is the server URL that will be used for the request
url: '/user',
// method
is the request method to be used when making the request
method: 'get', // default
// headers
are custom headers to be sent
headers: {'X-Requested-With': 'XMLHttpRequest'},
// params
are the URL parameters to be sent with the request
// Must be a plain object or a URLSearchParams object
params: {
ID: 12345
},
//contentType
contentType:"application/json; charset=UTF-8",// default
//async
async:ture,// default
// data
is the data to be sent as the request body
// Only applicable for request methods 'PUT', 'POST', and 'PATCH'
// When no transformRequest
is set, must be of one of the following types:
// - string, plain object, ArrayBuffer, ArrayBufferView, URLSearchParams
// - Browser only: FormData, File, Blob
// - Node only: Stream, Buffer
data: {
firstName: 'Fred'
},
// syntax alternative to send data into the body
// method post
// only the value is sent, not the key
data: 'Country=Brasil&City=Belo Horizonte',
// timeout
specifies the number of milliseconds before the request times out.
// If the request takes longer than timeout
, the request will be aborted.
timeout: 1000, // default is 0
(no timeout)
// dataType
indicates the type of data that the server will respond with
// options are: 'arraybuffer', 'document', 'json', 'text', 'stream'
// browser only: 'blob'
dataType: 'json', // default
//Method executed after successful operation
success:function (res, status, errCode) {
},
//Method to be executed after running failure
error:function (res, status, errCode) {
},
//The method executed after the operation is completed
complete:function (xdr,status, errCode) {
},
}
`
License
更新记录
1 添加Data对象操作,路径是相对于整个服务的;与Resource的区别在与,Resource是定制出来的服务,相对于Resource目录的,Data比Resource调用时的相对路径要多写一级路径。
`
MIT
``