javascript - ajax 对象字面量传输过去后台为什么接收不到
PHP中文网
PHP中文网 2017-04-10 16:49:31
[JavaScript讨论组]

如图,注释掉的对象字面量的方法后台表示用POST接收不到数据。

后台如何接收到这种传输方式的数据呢?

PHP中文网
PHP中文网

认证0级讲师

全部回复(5)
PHPz

注释掉的数据后台要从request.body中读取,是个JSON格式的数据
需要再后台反序列化成JSON对象~~

PHP中文网

你都没有给她添加名称,当然接受不到数据。
应该这样:
xhr.send('json='+json_string) 这样发送。

Php端:
$_post['json'] 就可以接受到json格式字符串了

若是想要使用json数据,那么就先要进行解码:
json_decode(json) 函数可以解码json并返回一个stdClass对象,然后获取数据:

例如:json_decode(json)->name

黄舟

请求头的content-type要对应啊!
json的post请使用application/json而不是x-form…

ringa_lee

1、创建表单数据可以用 new FormData() :

{ eventType : "loginIn",
  data: {
    UserName: account,
    password: password
  }
}

改为:

var formData = new FormData();
formData.eventType = "loginIn";
formData.data = {
    UserName: account,
    password: password
  };

... 

xhr.send(formData);

2、onreadystatuschange事件建议在xhr.send(formData)之前就做好声明

黄舟

搂着是post提交,必须加上这一行。

 xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
 

http://www.w3school.com.cn/ajax/ajax_xmlhttprequest_send.asp

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号