douluoqiu4538 2011-06-23 04:21 采纳率: 100%
浏览 296

使用POST方法从javascript向服务器发送json数据的问题

I am trying to see the json data I sent to the server using XMLHttpRequest but it seems that the server is not receiving it, when I run the javascript the alert window will pop up but doesn't print anything. Anyone know how to solve this problem? Thanks

On the client side, Java script

var obj = {"action": "nothing"};

var jsonString = "jsonString=" + JSON.stringify(obj);


var xmlhttp = new XMLHttpRequest();

xmlhttp.open("POST","http://myserver/main.php",true);

xmlhttp.setRequestHeader("Content-type","application/json");
xmlhttp.setRequestHeader("Content-Length",jsonString.length);

xmlhttp.onreadystatechange = function() 
{           
      if(xmlhttp.readyState === 4 && xmlhttp.status === 200){
          alert(xmlhttp.responseText);
      }
}
xmlhttp.send(jsonString);

On the server,php

if(isset($_POST['jsonString'])) 
echo $_POST['jsonString'];
  • 写回答

3条回答 默认 最新

  • dpq39825 2011-06-23 04:51
    关注

    You're sending JSON data, but the content-type is set to application/x-www-form-urlencoded. You should either send form/encoded data (var obj="action=nothing") or set the content-type to JSON (application/json)

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)