JavaScriptAjaxpost没有在python中获取数据?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (140)

我是网络开发的初学者。我试图使用POST方法(没有jQuery)来生成Ajax请求。以下是我的JS代码

function loadDoc() {

  var Obj = {"user_Name":"testName"};

  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      document.getElementById("x").innerHTML =
      this.responseText;
    }
  };

  xhttp.open("POST", "/cgi-bin/Messapp/hostelapp.py", true);
  xhttp.setRequestHeader("Content-Type", "text/json");


  xhttp.send(JSON.stringify(Obj));
}

下面是我的python脚本

#!D:/python/python.exe
print("Content-Type: text/json\n\n")

import cgi, cgitb , re 
cgitb.enable() 
form = cgi.FieldStorage() #I am facing problem in this line 
print(form["user_Name])

请参阅以下错误

提问于
用户回答回答于

你必须在Ajax中添加以下标题,而不是json

xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

扫码关注云+社区

领取腾讯云代金券