【问题标题】:Getting list in JSON at Python Flask [duplicate]在 Python Flask 中获取 JSON 列表 [重复]
【发布时间】:2017-09-09 14:09:33
【问题描述】:

我想将“数据”列表从我的 javascript 传递到 python FLASK APP,然后在列表“数据”上工作 要发送的 JavaScript 代码是

function fetch()
    {
     var jsonObj={'email':"testuser4@test.tld",'Data': ['Name','Phone']};
      $.ajax({
                 url:'http://192.168.56.102:5000/fetch',
                 data:jsonObj,
                 type:"POST",
                 dataType:"json",
                 crossDomain:true
             }).done(function(result){console.log(result)}).fail(function(result){console.log("error")});
    }

Python FLASK 代码是

@app.route("/fetch", methods=["POST"])
def fetch():
    print request.json
    return jsonify({"Status":200})

从上面的打印语句我得到

ImmutableMultiDict([('Data[]', u'Name'), ('Data[]', u'Phone'), ('email', u'testuser4@test.tld')])

但我想得到这样的东西

ImmutableMultiDict( { 'email': 'testuser4@test.tld', 'Data' : ['姓名','电子邮件'] } )

简而言之,我想在服务器端获取列表,以便通过 JSON 发送。

PS:我已经尝试过How to get a JSON Object in Python (Flask Framework) 但是在实现这一点时,我得到了

ImmutableMultiDict([])

【问题讨论】:

    标签: javascript python json flask


    【解决方案1】:

    需要自己将数据转成JSON,并使用contentType设置content-type header。

    $.ajax({
       url:'http://192.168.56.102:5000/fetch',
       data: JSON.stringify(jsonObj),
       type:"POST",
       contentType:"application/json",
       ...
    

    【讨论】:

      猜你喜欢
      • 2015-10-05
      • 2021-10-18
      • 1970-01-01
      • 1970-01-01
      • 2021-05-22
      • 2019-06-01
      • 2013-09-15
      • 2011-05-09
      • 2022-01-21
      相关资源
      最近更新 更多