1、我后台使用C#发布了一个webservice。
2、在pc端使用ajax jsonp可以访问。
3、在移动端使用zepto使用同样的代码则无法解决。
请教下,谢谢!!!
1、我后台使用C#发布了一个webservice。
2、在pc端使用ajax jsonp可以访问。
3、在移动端使用zepto使用同样的代码则无法解决。
请教下,谢谢!!!
在5+客户端内,mui.ajax支持直接跨域访问html,json,xml,text,目前暂不支持jsonp
mui.getJSON(url,function(response){console.log(JSON.stringify(response));})
2015-01-28 13:19
回复 myzyq:你是要在普通浏览器做跨域?如果是这样的话,暂时你可以使用dataType:script的方式,服务器端返回一个可执行的js片段
2015-06-10 03:05
我的问题已经解决
后台代码如下:
public static void reSponseJson(String string,HttpServletResponse response) {
response.setContentType("text/json; charset=utf-8");
response.setHeader("Access-Control-Allow-Origin", "");
response.setHeader("Access-Control-Allow-Headers", "X-Requested-With");
response.setHeader("Cache-Control", "no-cache");
PrintWriter out = null;
try {
out = response.getWriter();
out.print(string);
out.flush();
} catch (IOException e) {
e.printStackTrace();
} finally {
out.close();
}
}
ajax 代码如下:
var url = "http://192.168.1.100/lpAppService/JobMngController.do?action=jobListForPage";
mui.ajax(url, {
data: {
rows: rows,
page: page
},
//dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 1000, //超时时间设置为10秒;
success: function(data) {
console.info(data);
},
error: function(xhr, type, errorThrown) {
//异常处理;
console.log(type);
}
});
问题出在:一定要在head里面加上
<meta http-equiv="Access-Control-Allow-Origin" content="">
<meta http-equiv="content-security-policy">
head里面的内容如下:
<head>
<meta charset="utf-8">
<title>Hello MUI</title>
<meta http-equiv="Access-Control-Allow-Origin" content="*">
<meta http-equiv="content-security-policy">
<meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
</head>
张剑 (作者)
$("#Jsonp").click(function(){
$.ajax({
type:"POST",
url:"http://192.168.198.210/Web/WebService.asmx/UserLogin",
data:{username:'admin',password:'admin'},
dataType:'jsonp',
jsonp:'callback',
jsonpCallback:'add'
success:function(data){
$("#result").text(data.msg);
}
});
})
在PC端使用jquery测试通过
2015-01-28 09:04
myzyq
回复 张剑:你使用的mui直接调用的$ajax直接成功了?
2015-06-09 19:33