axios 将CSV转换为JSON以将POST从React发送到Flask API

bwntbbo3  于 2023-01-25  发布在  iOS
关注(0)|答案(1)|浏览(162)

我尝试从我的React应用程序向我的API发送POST请求,并正在研究如何将CSV从输入格式更改为JSON格式,这样就不需要下载了。我见过有人使用Papaparse,但据我所知,它已经有一段时间没有更新了,所以我正在寻找其他选项。

const handleSubmit = async (event) => {
        event.preventDefault();// from elements property
        console.log(event.target.returns.value)
        console.log(await axios.post('http://127.0.0.1:5000/ratios', event.target.returns.value))
        setShow(true)
    };

如果我只是这样发送,我会得到一个500错误,并且我的 flask 上的POST函数的第一行是

df = request.get_json()

也许有一个更简单的方法,但让我知道,如果你有任何见解或建议。谢谢你提前

pgvzfuti

pgvzfuti1#

你的问题有点令人困惑,我想这是由于你对csv和json如何交互的理解。CSV本质上是一种发送数据表的方式,它没有一个固有的密钥对结构,所以你需要做一些工作来转换它。我不熟悉flask,但它看起来像df = request.get_json()试图解析它所期望的json,而不是csv。你是对的,你需要转换它。Papaparse看起来是一个很好的选择,并且仍然在积极的开发中。但是我不认为这真的很重要,因为csv和json是很长一段时间没有改变的格式,所以转换它们的任务没有改变。所以最近是否有开发并不重要。
如果你决定自己创建一个,你可以把每一行都转换成一个对象,然后把每一行都与第一行的键标签匹配,或者只与保存的常量匹配,这取决于你的csv是如何构造的。

相关问题