![](/img/trans.png)
[英]Trying to post data with Request NPM from NodeJS to localhost (Loopback Swagger API)
[英]Trying to Request Data (POST) from FLASK API with Java Script
我目前正在嘗試從我的 API 中使用 Java 腳本請求數據,但它不起作用。 每次我發布錯誤消息時,FLASK 中的“TypeError: 'NoneType' object is not subscriptable”。 我的 API 的代碼:
#http://127.0.0.1:5000/fnd
@app.route('/fnd', methods=['POST'])
def fnd():
content = request.json
return jsonify(content['Text'])
對於帖子,我正在使用 JQuery AJAX 請求
$(function ()
{
var output = $('#output');
$('#checkonfake').on('click',function(){
var texttocheck = $('#texttocheck').val();
var datad = {"Text": texttocheck}
console.log(datad);
if(texttocheck != ""){
$.ajax(
{
dataType: "json",
type: 'POST',
data:
{
datad
},
url: 'http://127.0.0.1:5000/fnd',
success: function (result)
{
console.log(result);
},
error: function ()
{
console.log("error");
}
});
}
})
});
我有一個輸入框和一個按鈕,一旦我按下按鈕,請求就會被發送出去。
您可以通過字符串將代碼更改為此:
#http://127.0.0.1:5000/fnd
@app.route('/fnd', methods=['POST'])
def fnd():
s_json = request.get_data(as_text=True)
obj = json.loads(s_json)
return jsonify(obj['Text'])
並將 html 代碼更改為:
datad = {"aaa":"aaaa", "bbb":"bbb","Text":"Text"}
$.ajax(
{
dataType: "json",
type: 'POST',
data: JSON.stringify(datad),
url: 'http://127.0.0.1:5000/fnd',
success: function (result)
{
console.log(result);
},
error: function ()
{
console.log("error");
}
});
或者如果你想使用 json
@app.route('/fnd', methods=['POST'])
def fnd():
return jsonify(request.form["Text"])
datad = {"aaa":"aaaa", "bbb":"bbb","Text":"Text"}
$.ajax(
{
dataType: "json",
type: 'POST',
data: datad,
url: 'http://127.0.0.1:5000/fnd',
success: function (result)
{
console.log(result);
},
error: function ()
{
console.log("error");
}
});
順便一提:
我在 flask.palletsprojects.com 中找不到 request.json 的信息
所以..我不知道這個參數的含義以及為什么它沒有
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.