jQuery的Ajax请求,在success里无法获取数据

攻城狮1号 2016-08-05 11:08:50

直接在地址栏中输入有数据。
但是通过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回调函数。
...全文
875 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
看你一开始说的,就是把POST和GET搞混了。
你的后台接收方式应该是使用了only Get的方法,所以只能通过URL传递参数的方式去Get(无论是在地址栏里输入得到,还是用AJAX的GET方法)。
而你前台又非要用POST,所以就得不到结果了。
这就是前台和后台“鸡同鸭讲”,应该使用共同的方式(或者让你的后台使用能够同时处理POST和GET传参的方法)。
具体是让前台顺从后台,还是让后台顺应前台,你自己或和后台同事商量看着办。
licip 2016-08-09
  • 打赏
  • 举报
回复 1
引用 11 楼 showbo 的回复:
跨域了不能用js直接请求跨域地址,拿不到数据或者浏览器报错,需要在你站点做代理页面,代理页面用服务端xhr获取输出输出,ajax请求代理页面
+1
Go 旅城通票 2016-08-07
  • 打赏
  • 举报
回复
跨域了不能用js直接请求跨域地址,拿不到数据或者浏览器报错,需要在你站点做代理页面,代理页面用服务端xhr获取输出输出,ajax请求代理页面
攻城狮1号 2016-08-05
  • 打赏
  • 举报
回复
引用 2 楼 qq_34586510 的回复:
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。
攻城狮1号 2016-08-05
  • 打赏
  • 举报
回复
引用 1 楼 kadxls 的回复:
url: url, method: 'POST', contentType: "application/json", data: JSON.stringify(data), dataType: 'json',
测试没有用。
qq_34586510 2016-08-05
  • 打赏
  • 举报
回复
你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
kadxls 2016-08-05
  • 打赏
  • 举报
回复
url: url, method: 'POST', contentType: "application/json", data: JSON.stringify(data), dataType: 'json',
攻城狮1号 2016-08-05
  • 打赏
  • 举报
回复
引用 9 楼 qq_32778999 的回复:
alert可以执行说明ajax请求成功了,你在后台的接收处和发送处加一个打印,查看下
没有后台,是纯靠前端页面执行的,最后发现这种方式行不通,改用服务端发起该http请求,ajax发送请求给后台页面 后台页面在真正发送该请求,获取到数据后再返回到前台,进行数据的处理,最后显示其返回值。
Devin.qu 2016-08-05
  • 打赏
  • 举报
回复
alert可以执行说明ajax请求成功了,你在后台的接收处和发送处加一个打印,查看下
qq_34586510 2016-08-05
  • 打赏
  • 举报
回复
引用 7 楼 qq125850 的回复:
[quote=引用 5 楼 qq_34586510 的回复:] [quote=引用 4 楼 qq125850 的回复:] [quote=引用 2 楼 qq_34586510 的回复:] 你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。[/quote] 哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到[/quote] 我把传的值去掉了,直接调用地址,还是取不到值,是不是因为我这个请求跨域了?[/quote] 有可能的。你百度搜一下ajax跨域
攻城狮1号 2016-08-05
  • 打赏
  • 举报
回复
引用 5 楼 qq_34586510 的回复:
[quote=引用 4 楼 qq125850 的回复:] [quote=引用 2 楼 qq_34586510 的回复:] 你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。[/quote] 哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到[/quote] 我把传的值去掉了,直接调用地址,还是取不到值,是不是因为我这个请求跨域了?
攻城狮1号 2016-08-05
  • 打赏
  • 举报
回复
是不是因为我这个请求跨域了?Ajax其实就是向服务器发送一个GET或POST请求,然后取得服务器响应结果,返回客户端。跨域出现错误的地方正是请求到了数据,拿不回去。
qq_34586510 2016-08-05
  • 打赏
  • 举报
回复
引用 4 楼 qq125850 的回复:
[quote=引用 2 楼 qq_34586510 的回复:] 你这个代码是没问题的,你确定后台返回了数据或者数据类型没错?
后台应该是有数据返回,在地址栏输入url带上提交的参数,是有数据返回的。[/quote] 哪你把你传的值先去掉,让后端给你返回一个固定的值,看看能不能取到

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧