【问题标题】:XMLHttpRequest sends b'' instead of json dataXMLHttpRequest 发送 b'' 而不是 json 数据
【发布时间】:2020-11-22 11:23:58
【问题描述】:

我正在尝试将 json 数据从我的 web 应用程序发送到我的 python flask api,我的服务器正在接收 POST rqeuest & 正在接收数据,问题是它没有接收 json 数据而不是字符串 b''

这是我将 json 数据发送到我的 api 的 javascript 代码

function onSubmit() {
    document.getElementById("orderbutton").disabled=true;
    setTimeout('document.getElementById("orderbutton").disabled=false;',3000);
    var request = new XMLHttpRequest();
    var url = "http://127.0.0.1:5000/api/order";
    request.open('POST', url, true)
    request.setRequestHeader("Content-Type", "application/json;charset=UTF-8");
    request.onload = function() {
        var response = JSON.parse(request.responseText)
        console.log(response)
    }

    request.send(JSON.stringify({"id": document.getElementById("order").value.trim()}))
}

编辑:这不是 document.getElementById("order").value.trim() 的问题,因为当我 console.log 它时,我得到了我在 <input> 字段中输入的输入

【问题讨论】:

    标签: javascript json flask xmlhttprequest


    【解决方案1】:

    尝试将您的send() 行编辑为

    request.send(JSON.stringify({id: document.getElementById("order").value.trim()}));
    

    "id"更改为id

    【讨论】:

    • 您能在此处添加您的服务器代码吗?不要忘记掩盖机密信息。
    • @app.route('/api/order', methods=['POST', 'OPTIONS']) def is_valid(): print(request.get_data()) unique_id = request.get_json()['id']
    【解决方案2】:

    使用.decode('utf-8'),让我知道结果。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-01
      • 2013-06-09
      • 1970-01-01
      • 2018-12-22
      • 2022-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多