直接在地址栏中输入有数据。
但是通过ajax却获取不到数据
$.ajax({
type: "post",
url: "http://www.smsadmin.cn/smsmarketing/wwwroot/interface/postSendSms/",
contentType: "application/x-www-form-urlencoded",
//dataType:"json",
data:{
uid: uid,
pwd: md5pwd,
mobile: mobile,
msg: msg
},
success:function(result){
alert(result);
}
});
应该是返回的类型不是json类型,大神帮忙看看怎么处理。
jquery用的是1.2.6版本,高版本无法执行success,会执行error回调函数。
13 个解决方案
#1
url: url,
method: 'POST',
contentType: "application/json",
data: JSON.stringify(data),
dataType: 'json',
method: 'POST',
contentType: "application/json",
data: JSON.stringify(data),
dataType: 'json',
#2
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
#3
测试没有用。
#4
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
#5
哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到
#6
是不是因为我这个请求跨域了?Ajax其实就是向服务器发送一个GET或POST请求,然后取得服务器响应结果,返回客户端。跨域出现错误的地方正是请求到了数据,拿不回去。
#7
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到
我把传的值去掉了,直接调用地址,还是取不到值,是不是因为我这个请求跨域了?
#8
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到
我把传的值去掉了,直接调用地址,还是取不到值,是不是因为我这个请求跨域了?
有可能的。你百度搜一下ajax跨域
#9
alert可以执行说明ajax请求成功了,你在后台的接收处和发送处加一个打印,查看下
#10
alert可以执行说明ajax请求成功了,你在后台的接收处和发送处加一个打印,查看下
没有后台,是纯靠前端页面执行的,最后发现这种方式行不通,改用服务端发起该http请求,ajax发送请求给后台页面 后台页面在真正发送该请求,获取到数据后再返回到前台,进行数据的处理,最后显示其返回值。
#11
跨域了不能用js直接请求跨域地址,拿不到数据或者浏览器报错,需要在你站点做代理页面,代理页面用服务端xhr获取输出输出,ajax请求代理页面
#12
看你一开始说的,就是把POST和GET搞混了。
你的后台接收方式应该是使用了only Get的方法,所以只能通过URL传递参数的方式去Get(无论是在地址栏里输入得到,还是用AJAX的GET方法)。
而你前台又非要用POST,所以就得不到结果了。
这就是前台和后台“鸡同鸭讲”,应该使用共同的方式(或者让你的后台使用能够同时处理POST和GET传参的方法)。
具体是让前台顺从后台,还是让后台顺应前台,你自己或和后台同事商量看着办。
你的后台接收方式应该是使用了only Get的方法,所以只能通过URL传递参数的方式去Get(无论是在地址栏里输入得到,还是用AJAX的GET方法)。
而你前台又非要用POST,所以就得不到结果了。
这就是前台和后台“鸡同鸭讲”,应该使用共同的方式(或者让你的后台使用能够同时处理POST和GET传参的方法)。
具体是让前台顺从后台,还是让后台顺应前台,你自己或和后台同事商量看着办。
#13
跨域了不能用js直接请求跨域地址,拿不到数据或者浏览器报错,需要在你站点做代理页面,代理页面用服务端xhr获取输出输出,ajax请求代理页面
#1
url: url,
method: 'POST',
contentType: "application/json",
data: JSON.stringify(data),
dataType: 'json',
method: 'POST',
contentType: "application/json",
data: JSON.stringify(data),
dataType: 'json',
#2
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
#3
url: url,
method: 'POST',
contentType: "application/json",
data: JSON.stringify(data),
dataType: 'json',
测试没有用。
#4
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
#5
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到
#6
是不是因为我这个请求跨域了?Ajax其实就是向服务器发送一个GET或POST请求,然后取得服务器响应结果,返回客户端。跨域出现错误的地方正是请求到了数据,拿不回去。
#7
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到
我把传的值去掉了,直接调用地址,还是取不到值,是不是因为我这个请求跨域了?
#8
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到
我把传的值去掉了,直接调用地址,还是取不到值,是不是因为我这个请求跨域了?
有可能的。你百度搜一下ajax跨域
#9
alert可以执行说明ajax请求成功了,你在后台的接收处和发送处加一个打印,查看下
#10
alert可以执行说明ajax请求成功了,你在后台的接收处和发送处加一个打印,查看下
没有后台,是纯靠前端页面执行的,最后发现这种方式行不通,改用服务端发起该http请求,ajax发送请求给后台页面 后台页面在真正发送该请求,获取到数据后再返回到前台,进行数据的处理,最后显示其返回值。
#11
跨域了不能用js直接请求跨域地址,拿不到数据或者浏览器报错,需要在你站点做代理页面,代理页面用服务端xhr获取输出输出,ajax请求代理页面
#12
看你一开始说的,就是把POST和GET搞混了。
你的后台接收方式应该是使用了only Get的方法,所以只能通过URL传递参数的方式去Get(无论是在地址栏里输入得到,还是用AJAX的GET方法)。
而你前台又非要用POST,所以就得不到结果了。
这就是前台和后台“鸡同鸭讲”,应该使用共同的方式(或者让你的后台使用能够同时处理POST和GET传参的方法)。
具体是让前台顺从后台,还是让后台顺应前台,你自己或和后台同事商量看着办。
你的后台接收方式应该是使用了only Get的方法,所以只能通过URL传递参数的方式去Get(无论是在地址栏里输入得到,还是用AJAX的GET方法)。
而你前台又非要用POST,所以就得不到结果了。
这就是前台和后台“鸡同鸭讲”,应该使用共同的方式(或者让你的后台使用能够同时处理POST和GET传参的方法)。
具体是让前台顺从后台,还是让后台顺应前台,你自己或和后台同事商量看着办。
#13
跨域了不能用js直接请求跨域地址,拿不到数据或者浏览器报错,需要在你站点做代理页面,代理页面用服务端xhr获取输出输出,ajax请求代理页面