微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从 GET 请求中获取 JSON 数据 FLASK-Python

如何解决如何从 GET 请求中获取 JSON 数据 FLASK-Python

我在 React 应用程序上使用 get 请求来运行一个函数,该函数到目前为止只是在我的 Flask api 中“打印”出数据。我可以点击端点,并收到一个“响应”,但我不确定如何将 JSON 数据附加到 FLASK 给出的响应中。

PS:是否需要将此 JSON 数据发布到数据库,然后从我的 create react 应用程序中检索它?或者我可以做我正在尝试做的事情,即简单地运行 GET 请求,让它生成 JSON,然后在 GET 响应中将其发送回 Create React App。

Flask API (views.py)

@main.route('/add_post')
def add_post():
  

  temparray = []
  *code that pushes json object into temparray [{},{},{}]*
  
  time.sleep(5)       
  post_data = temparray
  print (post_data)

  ^^^^^^How do I attach post_data to the response?^^^^^^^^^
  

  return 'Done',201

创建 React 应用程序 (app.js)

import { useEffect } from 'react';
import './App.css';

function App() {
  useEffect(() => {
    fetch("/add_post").then(response =>
      console.log(response)
      )
  },[])
  return (
    <div className="App">
      <h1>
        test
      </h1>
    </div>
  );
}

解决方法

在这里,

fetch("/add_post").then(response =>
  console.log(response)
)

改为这样做

fetch("/add_post")
  .then(response => response.json())
  .then(jsonData => {
    // do something with the data,e.g. setState
  })
,

您可以从 return post_data 函数中简单地 add_post。这将自动将有效的 dict 转换为 JSON(即 jsonify

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。