1Introduction
- description:AJAX
- author:zcl
- create:2016-04-12 14:39
- update:2017年01月17日10:34:48
- github:https://github.com/blearjs/blear.core.ajax
2Example
var ajax = require('blear.core.ajax');
3ajax(options): undefined
发起 ajax 请求。
ajax({
url: '/path/to/ajax',
method: 'post',
query: {
a: 1,
b: 2
},
body: {
c: 3,
d: 4
}
});
3.1options
- 类型:
Object
- 说明:配置
3.2options.method
- 类型:
String
- 说明:请求方法,可以小写
- 默认:
"GET"
3.3options.url
- 类型:
String
- 说明:请求方法,可以小写
- 默认:
"GET"
3.4options.query
- 类型:
String | Object
- 说明:请求查询字符串或对象描述
- 默认:
null
3.5options.body
- 类型:
String | FormData
- 说明:请求方法,可以小写
- 默认:
null
3.6options.context
- 类型:
*
- 说明:回调上下文
- 默认:
null
3.7options.async
- 类型:
Boolean
- 说明:是否异步请求
- 默认:
true
3.8options.httpMethodOverride
- 类型:
Boolean
- 说明:是否重写请求方法,如果设置为 true,则会在非 GET 请求的请求头里添加
x-http-method-override
字段, 标记了原始的请求方法,配合 blear.express.http-method-override 使用。 - 默认:
false
3.9options.username
- 类型:
String
- 说明:url 鉴权用户名
- 默认:
null
3.10options.password
- 类型:
String
- 说明:url 鉴权密码
- 默认:
null
3.11options.contentType
- 类型:
String
- 说明:请求的数据类型,不建议修改,支持的有
json
,如果请求的数据类型为formData
,则会自动转换为formData
的请求头 - 默认:
"application/json"
3.12options.dataType
- 类型:
String
- 说明:期望的响应数据类型,不建议修改,支持的有
json
、html
、text
- 默认:
"json"
3.13options.accepts
- 类型:
String
- 说明:期望接收的数据类型
- 默认:
{json: "application/json", html: "text/html", text: "text/plain"}
3.14options.cache
- 类型:
Boolean
- 说明:是否遵循 http 缓存策略
- 默认:
true
3.15options.crossDomain
- 类型:
Boolean
- 说明:是否跨域,如果非跨域将添加
x-requested-with: XMLHttpRequest
请求头 - 默认:
false
3.16options.onSend(xhr, options)
- 类型:
Function
- 说明:请求发送时回调
- 默认:
null
3.17options.onSend: xhr
- 类型:
XMLHttpRequest
- 说明:ajax 请求的
XMLHttpRequest
实例
3.18options.onSend: options
- 类型:
Object
- 默认:参数
3.19options.onSend(xhr, options): next
- 类型:
Boolean
- 说明:返回
false
则取消 ajax - 默认:
true
3.20options.onSuccess(result)
- 类型:
Function
- 说明:请求响应成功回调
- 默认:
null
3.21options.onSuccess: result
- 类型:
Object | String
- 说明:如果期望响应数据类型是
json
,则数据类型是Object
,否则为String
3.22options.onError(err)
- 类型:
Function
- 说明:请求发送时回调
- 默认:
null
3.23options.onError: err
- 类型:
Error
- 说明:请求或响应出错都会触发,包含:
- 请求被中断
- 请求未成功发送
- 请求被取消
- 数据(JSON)解析错误
- 响应 Code 错误
- 响应超时错误
3.24options.onComplete(err, result)
- 类型:
Function
- 说明:请求发送时回调,最后触发
- 默认:
null
3.25options.onComplete: err
- 类型:
Error
- 说明:请求或响应出错都会触发
3.26options.onComplete: result
- 类型:
Object | String
- 说明:如果期望响应数据类型是
json
,则数据类型是Object
,否则为String
3.27options.onProgress(ev)
- 类型:
Function
- 说明:请求发送时回调
- 默认:
null
3.28options.onProgress: ev
- 类型:
Event
- 说明:请求进度事件