如何在 Python 中获取 JSON 对象(Flask 框架)

Posted

技术标签:

【中文标题】如何在 Python 中获取 JSON 对象(Flask 框架)【英文标题】:How to get a JSON Object in Python (Flask Framework) 【发布时间】:2015-10-05 13:03:17 【问题描述】:

如何在 Python(Flask 框架)中获取 JSON 对象。 下面是我的代码sn-p `

var hotel=$( "#listHotel option:selected" ).val();      
        if(hotel!="select")
               
        $.ajax(
            url: '/getHotels',
            data: 'hotel':hotel,          
            type: 'POST',
            success: function(response)
                alert(response);
                var r= JSON.parse(response);                
                var rating =r.message               
                $("#rate").html("Ratings : "+rating);
                $("#rate").show('slow');                
                console.log(response);
            ,
            error: function(error)
                alert(response);
                console.log(error);
              
          );
        `

如何在我的 Python 脚本 Flask Framework 中获取 JSON 值 hotel

from flask import Flask, render_template, json, request
app = Flask(__name__)

@app.route('/')
def main():
    return render_template('index.html')
@app.route('/getHotels',methods=['POST','GET'])
def getHotels():     
    try:        
        _hotel=request.POST['hotel']
        print _hotel

这是我的 Python 代码

【问题讨论】:

你没有发送 JSON,所以 Flask 没有 JSON 可以获取。 你在烧瓶中尝试过什么吗……如果你尝试了……那么你介意在这里展示一下吗? 现在我用 Flask 中的 Python 代码提出了我的问题 【参考方案1】:

在您的 javascript 中将数据转换为 JSON 并将 contentType 设置为 "application/json"

data: JSON.stringify('hotel':hotel),
contentType : "application/json",

在您的烧瓶函数中,使用 request.json 获取 JSON:

@app.route('/getHotels')
def getHotels():
    hotel = request.json['hotel']
    .....

【讨论】:

以上是关于如何在 Python 中获取 JSON 对象(Flask 框架)的主要内容,如果未能解决你的问题,请参考以下文章

我如何在python中读取JSON对象?

如何将 JSON 对象从 Python 脚本发送到 jQuery?

如何在 Python 中的 Moviepy 中使用 fl_image 函数?

Python 怎么获取json 里的特定的某个值

对 Python 返回 JSON 作为字符串而不是文字感到困惑

如何使python对象json序列化?