【发布时间】:2018-07-04 01:28:09
【问题描述】:
试图了解如何将发布请求发送到我的后端(烧瓶)。
在我的 HTML 中,我有 3 个复选框和一个提交按钮。我的提交按钮返回一个 javascript 数组,我正在尝试将该 javascript 数组发送到您可以在下面看到的 api 端点“api/regions”。
$(document).ready(function() {
$("#loadData").click(getChecked);
});
function getChecked() {
event.preventDefault();
var checkboxes = $(".form-check input[type=checkbox]:checked");
//toArray: convert checkboxes object to javascript array
var labels = checkboxes.toArray().map(checkbox => checkbox.value);
$.ajax({
url: 'api/regions',
type: "POST",
data: JSON.stringify(labels),
processData: false,
contentType: "application/json; charset=UTF-8",
success: function(response) {
console.log(response);
},
error: function(error) {
console.log(error);
}
});
}
在我的 app.py 中,我的端点 api 有一条路由:
@app.route('/api/regions', methods=['POST'])
def regions():
regions = request.json
with open("C:\\test.txt", 'w') as f:
f.write(regions)
if __name__ == "__main__":
app.run(debug=True)
我知道没有返回语句,我只是想写我从中得到的数据
regions = request.json
到一个文件。 "C:\test.txt"
我在尝试执行此操作时遇到的错误是 500,这并没有给我很多工作。我不确定我所缺少的是前端还是后端,所以希望有人可以阐明我哪里出错了。
【问题讨论】:
-
如果遇到 500 错误,您可能需要在 ajax
url参数中使用前导/。所以'/api/regions'而不是'api/regions' -
你在你的 python 进程的标准输出上看到了什么吗?还是在您的日志文件中?
标签: javascript jquery python ajax flask