如何将Flask中的JSON信息传递给Angular

时间:2018-05-31 22:49:18

标签: javascript json angular

这是我第一次尝试连接Flask后端和Angular前端。我试图让前端收集后端生成的JSON数据。这就是代码的样子。

烧瓶中:

@app.route('/weather/loc', methods=["POST","GET"])
def say_hi():
    location = request.form.get("location", default="London")
    try:
        location, condition, temp = weatherAtLocation( location)
        content = "Hello there %s, your weather is %s with a temperature of %s°C." %(location, condition.lower(), temp)
        return_dic = {
        "location":location,
        "condition":condition.lower(),
        "temperature": temp
        }
        return jsonify(return_dic)
    except:
        return jsonify( {})

手动测试后,这似乎工作正常。我的问题在于Angular,调用的函数是:

hasclicked(){
  this.HttpClient.post("http://127.0.0.1:5000/weather/loc",
  {
    "location":"London"
  })

}

我的问题是我不熟悉TypeScript,找不到向我展示如何存储返回的JSON数据的示例。

1 个答案:

答案 0 :(得分:1)

您需要订阅post()方法,否则永远不会执行调用。然后,您就可以与响应进行交互。请参阅here for more information regarding making POST requests