ajax请求 为何老是 返回error

varurl="https://127.0.0.1:3000/idmp/validateUserInfo";varjsonData="";jsonData={"usern... var url = "https://127.0.0.1:3000/idmp/validateUserInfo";
var jsonData = "";
jsonData = {"username":username,"authType":
"MA","Issuer":"sso",
"AssertionConsumerServiceURL":"asas",
"RelayState":"123321"};
$.ajax({
url:url,
type:"get",
data:jsonData,
beforeSend:function(){
//这里是开始执行方法,显示效果,效果自己写
},
complete:function(){
//方法执行完毕,效果自己可以关闭,或者隐藏效果
},
success:function(data){
//数据加载成功
if(data.ResultCode == 101106){
//到新页面
location.href=basePath+'index?mobileNumber='+username;
}
if(data.ResultCode == 101107){
// $("#maUsernameException").text("sim卡认证失败 ");
alert("sim卡认证失败");
}
if(data.ResultCode == 101108){

alert("sim卡认证超时,请重新认证 ");

}
if(data.ResultCode == 101118){
// $("#maUsernameException").text("您的手机暂不支持一键登录 ");
alert("您的手机暂不支持一键登录 ");
}
},
error:function(){
//数据加载失败
// $("#upUsernameException").text("请求失败,请稍后重试!");
alert("请求失败,请稍后重试! ");
}
});
这是我的请求方法,请求的是服务器上的一个接口 , 接口有响应,接口请求成功 服务器上面是有日志打印的没有报错,但是老是执行error
展开
 我来答
回不去贞爱
推荐于2016-10-09 · 超过22用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:37.6万
展开全部
通过jquery的jsonp的方式.使用此方式,对服务器端有要求.
 服务器端如下:
    
        protected void Page_Load(object sender, EventArgs e)
        {
            string callback = Request.QueryString["jsoncallback"];

            string result = callback + "({\"name\":\"zhangsan\",\"date\":\"2012-12-03\"})";

            Response.Clear();
            Response.Write(result);
            Response.End();
        }
 
 
客户端:

  $.ajax({    
                async: false,    
                url: "http://192.168.0.5/Web/web1.aspx",    
                type: "GET",    
                dataType: 'jsonp',    
                //jsonp的值自定义,如果使用jsoncallback,那么服务器端,要返回一个jsoncallback的值对应的对象.    
                jsonp: 'jsoncallback',    
                //要传递的参数,没有传参时,也一定要写上    
                  data: null,    
                timeout: 5000,    
                //返回Json类型    
                  contentType: "application/json;utf-8", 

    
                //服务器段返回的对象包含name,data属性.    
                success: function (result) {    
                    alert(result.date);    
                },    
                error: function (jqXHR, textStatus, errorThrown) {    
                    alert(textStatus);    
                }    
            });
 实际上,在我们执行这段js时,js向服务器发出了这样一个请求:
 http://192.168.0.5/Web/web1.aspx?jsoncallback=jsonp1354505244726&_=1354505244742      


    
而服务器也相应的返回了如下对象:
    
jsonp1354506338864({"name":"zhangsan","date":"2012-12-03"})
 
此时就实现了跨域范文数据的要求.

参考:http://www.cnblogs.com/oneword/archive/2012/12/03/2799443.html

林一夏
2013-11-12 · TA获得超过482个赞
知道小有建树答主
回答量:608
采纳率:0%
帮助的人:449万
展开全部
是不是js跨域的问题?用url可以访问,但是用ajax调用会出错,很有可能是跨域了。
追问
确实是跨域的问题  则个我知道   但是有没有解决的方案呢?  急求解决方案
追答
使用jsonp的方法跨域调用获取返回值,可以百度,教程很详细。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lkiarest
2013-11-13 · TA获得超过543个赞
知道小有建树答主
回答量:761
采纳率:100%
帮助的人:385万
展开全部
在同域的服务器做一个简单的代理转发请求,即可避免跨域问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式