javascript - 烧瓶到javascript,发送json,遇到无效的语法错误
问题描述
我在尝试使用烧瓶将 pandas to_json 对象发送到前端时遇到了这个错误。代码和错误如下所示:
df_higg_msi_scored_manual = pd.read_csv(r'static/CSVFiles/higg_msi_scored_manual.csv')
materials = df_higg_msi_scored_manual.iloc[:33, 3]
material = materials.to_json(orient="values")
return render_template('/impacttool.html', material = material)
var user = JSON.parse('{{brand | tojson | safe}}');
无论生成的 json 文件多么有效,这都是弹出的错误:
根据我发送到前端的 json,我会得到意外的数字或意外的令牌,意外的令牌总是与 json 中第一个字符串的第一个字母匹配。有人可以帮我解决这个问题吗?我什至在烧瓶上尝试了 print(material),然后复制了打印到控制台的确切 json,将其分配给一个变量并将其发送到前端,它工作正常!但是由于某种原因,当我执行 to_json 并将其直接分配给变量时,它会引发此错误。如果有人知道如何解决它,我很想知道。谢谢你。
解决方案
多亏了 RaphSinai,我找到了解决方案,这是因为 {{brands | tojson }} 被额外的双引号格式化为“[whatever...]” 而不仅仅是 [],所以我将代码从 material = materials.to_json(orient="values") 更改为 json.loads(material = material.to_json(orient="values")) 并且效果很好。
推荐阅读
- docker - 使用 mysql.connector 的 Dockerize python flask api 在运行 docker 映像时会出现 ModuleNotFoundError
- django - Django Rest Framework CreateAPIView url 主键应该来自另一个模型,而不是尊重模型
- python - 我需要在女服务员提供的烧瓶 api 中使用多处理,如何?
- python - 将 pipeline.predict 提交到分级机时引发 ValueError(额外行)
- c# - 如何在 DataGridView 中使用 Excel 标题显示完整的 Excel 数据?当我将标题放在 OleDB Connection 上时,单元格变为空
- vue.js - 如果在 datepicker vuetify 中选择日期,我该如何调用方法?
- python - 当python中存在文本和整数时,如何将列表元素拆分为单词?
- apache-spark - Spark reduceByKey() 返回一个复合值
- html - 为什么 flexbox 代码不适用并且文本不换行?
- java - 测试异常时的单元测试最佳实践