chuanjie
chuanjie
  • 发布:2014-11-18 16:55
  • 更新:2015-04-20 21:02
  • 阅读:5542

我的xmlhttprequest请求是这样写的,但是我的php端没有接收到post数据,send()是这么用的吧,这么post不行呢

分类:HTML5+

xmlhttprequest我用的post方法提交,但是我的php端没有$_post的值
<script>

var xhr=null;  
function senddata(obj){  
var data='username='+obj.username.value+'&password='+obj.pwd.value;  

xhr=new plus.net.XMLHttpRequest();  
xhr.onreadystatechange=xhrStatechange;  
var url="http://www.wei43.com/user_api.php?act=act_login";  
xhr.setRequestHeader('Content-Type','application/text');  
xhr.open( "POST", url );  
xhr.send(data);  
return false;  
}
2014-11-18 16:55 负责人:无 分享
已邀请:
DCloud_App_Array

DCloud_App_Array

脚本写的应该有些问题,可能存在情况有:

  1. 服务器是否需要特定的Content-Type,看示例的提交数据应该是表单,应该设置
    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    并且这句应该放到open之后。
  2. 确保手机网络状态,可访问服务器地址。
  • chuanjie (作者)

    谢谢,. 服务器是否需要特定的Content-Type,看示例的提交数据应该是表单,应该设置

    xhr.setRequestHeader('Content-Type','application/x-www-form-urlencode');

    并且这句应该放到open之后。这个刚好是我的问题所在呢,解决了,太感谢了

    2014-11-19 13:26

  • leisure

    我加上了这句代码还是不行,请问是什么原因呢?

    2014-12-06 17:14

  • DCloud_App_Array

    回复 leisure:服务器有没有接收到请求?网络是不是通的?最好是通过抓包来确认下问题。

    2014-12-09 20:02

  • Elijah

    回复 DCloud_App_Array:这行代码xhr.setRequestHeader('Content-Type','application/x-www-form-urlencode');中的urlencode拼写错了,应该是urlencoded,调了半个多小时,有点被坑的感觉。

    2015-04-18 11:03

  • DCloud_App_Array

    确实是少写了一个d,已更正,感谢!

    2015-04-20 21:01

该问题目前已经被锁定, 无法添加新回复