MUI框架学习(5)–AJAX跨域问题

作者: Rememberautumn 分类: JavaScript,Web前端 发布时间: 2015-08-28 21:26 阅读: 17,878

做web开发的同学,肯定都知道跨域的问题,为了安全,所有的ajax请求必须在同一域名下进行,二级域名也不可以,第一次做web APP的时候,对于跨域问题也是不了解,后来使用了Jquery的Jsonp,当然还有一些其他的方法,都可以参考,但是在APP上是没有跨域概念的,只有web有,所有MUI集成了AJAX方法。

Ajax
mui框架基于htm5plus的XMLHttpRequest,封装了常用的Ajax函数,支持GET、POST请求方式,支持返回json、xml、html、text、script数据类型; 本着极简的设计原则,mui提供了mui.ajax方法,并在mui.ajax方法基础上,进一步简化出最常用的mui.get()、mui.getJSON()、mui.post()三个方法。

请求发送的目标地址
settings
Type: PlainObject
key/value格式的json对象,用来配置ajax请求参数,支持的完整参数参考如下mui.ajax([settings])方法
mui.ajax([settings])
settings
Type: PlainObject
key/value格式的json对象,用来配置ajax请求参数,支持的详细参数如下:
data
Type: PlainObject||String
发送到服务器的业务数据
dataType
Type: String
预期服务器返回的数据类型;如果不指定,mui将自动根据HTTP包的MIME头信息自动判断;支持设置的dataType可选值:
“xml”: 返回XML文档
“html”: 返回纯文本HTML信息;
“script”: 返回纯文本JavaScript代码
“json”: 返回JSON数据
“text”: 返回纯文本字符串
error
Type: Functon(XMLHttpRequest xhr,String type,String errorThrown)
请求失败时触发的回调函数,该函数接收三个参数:
xhr:xhr实例对象
type:错误描述,可取值:”timeout”, “error”, “abort”, “parsererror”、”null”
errorThrown:可捕获的异常对象
success
Type: Functon(Anything data,String textStatus,XMLHttpRequest xhr)
请求成功时触发的回调函数,该函数接收三个参数:
data:服务器返回的响应数据,类型可以是json对象、xml对象、字符串等;
textStatus:状态描述,默认值为’success’
xhr:xhr实例对象
timeout
Type: Number
请求超时时间(毫秒),默认值为0,表示永不超时;若超过设置的超时时间(非0的情况),依然未收到服务器响应,则触发error回调
type
Type: String
请求方式,目前仅支持’GET’和’POST’,默认为’GET’方式
代码示例:如下为通过post方式向某服务器发送鉴权登录的代码片段

mui.post()方法是对mui.ajax()的一个简化方法,直接使用POST请求方式向服务器发送数据、且不处理timeout和异常(若需处理异常及超时,请使用mui.ajax()方法),使用方法: mui.post(url[,data][,success][,dataType]),如上登录鉴权代码换成mui.post()后,代码更为简洁,如下:

如上mui.get()方法和如下mui.ajax()方法效果是一致的:

mui.getJSON()方法是在mui.get()方法基础上的更进一步简化,限定返回json格式的数据,其它参数和mui.get()方法一致,使用方法: mui.get(url[,data][,success]),如上获得新闻列表的代码换成mui.getJSON()方法后,更为简洁,如下:

MUI框架教程,5+Runtime学习请点击

1. MUI 页面间跳转

2.MUI框架页面间传值

3.手势事件配置

4.MUI学习笔记(4)–自定义事件,跨webview事件监听,跨页面刷新

5.MUI框架学习(5)–AJAX跨域问题

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

5条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注