无法在Flask中获取JSON数据[重复]

问题描述 投票:-1回答:1

这个问题在这里已有答案:

我正在尝试将一些JSON数据从javascript发送到Flask进行处理。我无法访问Flask中的json数据。我需要更改什么来获取数据?

$.get(
    "http://127.0.0.1:5000/search",
    {"Value": "" + user_input_value + ""},
    function (data) {
        console.log(data);
    }
);
@app.route("/search")
def search():
    searchTerm = request.get_json(force=True)
    print searchTerm
    return "Whatever"
python json flask
1个回答
1
投票

jQuery get方法上的data参数将被编码为查询字符串并附加到url。如在

/search?Value=foo

它不会像烧瓶那样的json一样可用。您必须从参数字典中提取任何值,如下所示:

 request.args.get('Value');

将json作为查询字符串的一部分传递通常是不常见的。通常人们会执行PUT或POST并在请求正文上传递数据。然后你可以使用request.get_json()。

有很多关于如何将json放入或发布到服务器的示例。我将包括一个如何做到这一点的例子:

$.ajax({
                url: "/finalize_order",
                type: 'PUT',
                dataType: 'json',
                contentType: 'application/json; charset=UTF-8',
                data: JSON.stringify(Terrell.cart),
                success: function () {

                    window.location.href = '/thanks';

                }
            })
© www.soinside.com 2019 - 2024. All rights reserved.