mui.ajax(
'http:xxxxxxxxxx/login',//请求的地址
{
data:{},//传给服务器的数据,一般在post请求中
dataType:'json',//服务器返回数据的格式;
type:'post',//HTTP请求类型;目前仅支持post/get
timeout:5000,//设置超时时间
async:true,//是否异步;true/false
crossDomain:true,//是否强制使用5+跨域
contentType:"application/json;charset=UTF-8",//提交数据的方式;当为application/json时,一般放在headers中
processData:true, //是否将data中非字符串转为key=value类型的数据格式
headers:{'Content-Type':'application/json'},//指定HTTP的请求头
beforeSend:function(){
//发送给服务器之前的回调
},
success:function(data){
//服务器返回响应,根据响应结果,分析是否登录成功;
...
},
error:function(xhr,type,errorThrown){
//异常处理;
console.log(type);
}
}
);
复制代码
部分参数介绍:
1、dataType
dataType为服务器返回过来的数据的格式。 支持返回的类型有:"json",返回json格式的数据;"xml",返回xml文档;"html",返回纯文本HTML信息;"script", 返回纯文本JavaScript代码;"text", 返回纯文本字符串;
2、contentType
contentType主要用于post请求,一般都是放在请求头headers:{"Content-Type":""}中,这样服务端就可以根据请求头中的Content-Type字段来获取消息主体的编码方式,进而进行解析数据。contentType支持的类型有: (1)"application/x-www-form-urlencoded"(默认),用于提交表单,数据会转换为键值对并按照 key1=val1&key2=val2 的方式进行编码。 (2)"multipart/form-data",用于提交表单,将数据处理为一条消息,以标签为单元,用分隔符(这就是boundary的作用)分开。 (3)"application/json",作为响应头比较常见。 (4)"text/xml",用于传输和存储数据,提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。 (5)"binary (application/octet-stream)",只能提交二进制,而且只能提交一个二进制,如果提交文件的话,只能提交一个文件,后台接收参数只能有一个,而且只能是流(或者字节数组)。
3、processData
processData布尔值类型 为了匹配默认的content-type("application/x-www-form-urlencoded"), mui默认会将data参数中传入的非字符串类型的数据转变为key1=value&key2=value2格式的查询串; 如果业务需要,希望发送其它格式的数据(比如Document对象),可以设置processData为false。
4、beforeSend
beforeSend,在启动Ajax请求之前触发,可以修改XMLHttpRequest对象(如果需要,可以设置其他头,如修改请求头setRequestHeader)。
5、error
error:function(xhr,type,errorThrown){},在请求发生错误时才调用此事件。 该函数接收三个参数:xhr:xhr实例对象;type:错误描述,可取值:"timeout","error","abort","parsererror","null";errorThrown:可捕获的异常对象;
success回调函数中也有三个参数,只是平时就用一个罢了。
mui.ajax()的简写
1、post方式
直接使用post请求方式向服务器发送数据、且不处理timeout和异常(若需处理异常及超时,就要使用mui.ajax()方法)
mui.post('http:xxxxxxxxxx/login',{
username:'username',
password:'password'
},function(data){
//服务器返回响应,根据响应结果,分析是否登录成功;
...
},'json' //返回json格式的数据,相当于参数dataType的值
);
复制代码
2、get方式
直接使用get请求方式向服务器发送数据、且不处理timeout和异常(若需处理异常及超时,请使用mui.ajax()方法)
mui.get('http:xxxxxxxxxx/list',
{category:'news'},//给分类加属性,选填
function(data){
//获得服务器响应
...
},'json'//返回json格式的数据,相当于参数dataType的值
);
复制代码
3、getJSON方式
限定返回json格式的数据,其它参数和mui.get()方法一致
mui.getJSON('http:xxxxxxxxxx/list',
{category:'news'},//给分类加属性,选填
function(data){
//获得服务器响应
...
}
);
作者:_村长_ 链接:https://juejin.cn/post/6850418121644179463 来源:稀土掘金 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关链接
发表评论