【问题标题】:How to decode JSON in Javascript?如何在 Javascript 中解码 JSON?
【发布时间】:2012-12-11 09:42:26
【问题描述】:

我有一个用 Python 编码的 JSON 对象。我不知道我的编码是否正确。

  proc = subprocess.Popen(['sshpass', 
                             '-p', 
                             password, 
                             'rsync', 
                             '-avz', 
                             '--info=progress2', 
                             source12, 
                             destination], 


                      stderr=subprocess.PIPE, 
                         stdout=subprocess.PIPE).communicate()[0]
progress = json.dumps(proc)
return HttpResponse(progress, mimetype="application/json")

我想使用 JAVASCRIPT 中的对象 'progress' 在 Django 模板中显示进度条。怎么做?谢谢

我正在尝试在这样的 Django 模板中实现它:

<script type="text/javascript" language="javascript">
function popUp() {
var jsProgress = JSON.parse(progress)
document.write(jsProgress)
}
</script>

但这并没有说明什么。

【问题讨论】:

  • 你能更清楚地解释一下你在做什么吗?特别是,您如何将 JSON 发送到浏览器?

标签: javascript python json


【解决方案1】:

您可以使用 JSON.parse("string") https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/JSON/parse 解码任何字符串(不关心 mime 类型)

所以只需像这样将服务器的响应传递给这个方法:

var jsObject = JSON.parse(server.response);

【讨论】:

  • 感谢您的回答。请参阅我编辑的问题。在我的情况下怎么做?
  • 试过:var message = JSON.parse(progress) document.write(message) 但没用。
  • parese 返回 javascript 对象 - 这意味着进度必须是字符串,它将被转换为消息对象。你可以这样做: document.write(progress) 如果它是字符串,而不是消息
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多