【发布时间】:2023-03-10 22:22:01
【问题描述】:
简要说明
我使用bottle.py作为一个简单的网络服务器,我正在渲染一个javascript,传递给它一个python字典,然后在javascript文件中我想向对象添加另一个字段并使用结果。
但是,当我在likePost() 中记录数据类型时返回字符串,所以我无法将新属性添加到对象中。
我也尝试不使用JSON.Stringify() 并返回以下错误:Unexpected token ' in JSON at position
代码
function commentPost(post){
var comment = prompt("Comment:", "Great post I like it")
data = JSON.parse(JSON.stringify(post))
console.log(typeof data) // RETURNS STRING
data.comment = comment // THIS DOESN'T WORK
fetch("/post", {
method: "POST",
body: JSON.stringify(data)
}).then(res => {
likePost(data)
});
}
Console.log(发布)
{'hashtag': 'landscapephotography', 'shortcode': 'B_5b0IWqrRU', 'display_url': 'https://scontent-mad1-1.cdninstagram.com/v/t51.2885-15/e35/s1080x1080/95910887_233194497953707_7239044831960646903_n.jpg?_nc_ht=scontent-mad1-1.cdninstagram.com&_nc_cat=107&_nc_ohc=i179pDQmui0AX82O3nB&oh=676ca07cba3af57944abcba4d3a27ad2&oe=5EDE8D74', 'thumbnail_src': 'https://scontent-mad1-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/s640x640/95910887_233194497953707_7239044831960646903_n.jpg?_nc_ht=scontent-mad1-1.cdninstagram.com&_nc_cat=107&_nc_ohc=i179pDQmui0AX82O3nB&oh=1ff2ac0b031bcc7cbdbb64b2a661ea1b&oe=5EDF0745', 'is_video': False, 'comments_disabled': False, 'caption': 'Photo by Jelen Girona on May 07, 2020.', 'comments_count': 0, 'timestamp': 1588877630, 'owner': '15642627659', 'likes_count': 0}
Console.log(帖子类型)
string
【问题讨论】:
-
为什么要对 JSON 进行字符串化然后对其进行解析?
post不是有效的 JSON 吗? -
@Ashley 否则它会给出错误 Unexpected token 正如我所说,并且 post 变量是 python 字典
-
什么是帖子?分享有问题的数据
-
你应该登录
data看看,很可能是这个问题:stackoverflow.com/questions/42494823/… -
在我看来
post可能是从后端检索到的(序列化的)JSON 字符串,在这种情况下,您应该只使用JSON.parse它,而无需再次进行字符串化。当然这只是猜测,没有看到它是什么。
标签: javascript bottle