有谁知道如何将数据从服务器代码(用python编写并在google应用程序引擎上运行)传递给客户端javascript?
我知道如何为php和javascript做到这一点:在php中,制作json格式的变量,我可以使用类似的东西在javascript中调用变量:
<script> var data = <?php varname_in_php ?>; </script>
如何使用Google应用引擎为应用程序实现相同的功能?
我正在尝试实现一些应用程序,它将使用Python解析一些统计数据,然后将数据传递给javascript以用于绘图。
提前致谢!
答案 0 :(得分:4)
如果您使用webapp2,您可以使用json lib,并执行
获取处理程序中的 self.request.write(json.dumps(some_data))
。
并记住将您的内容类型设置为application/json
比使用模板系统发送json简单得多。
您的客户端可以对处理程序执行简单请求。如果您使用jquery,则可以使用http://api.jquery.com/jQuery.getJSON/。
答案 1 :(得分:1)
您需要使用templating system。与Google App Engine一起提供的Django和Jinja2都非常简单,并且使这项任务变得非常简单。看一下this,应该相当清楚如何使用Jinja2通过script
标签传递变量。
快速示例,假设您已将data
传递到Jinja2模板中:
<script>
var jdata = new Array();
{% for entry in data %}
jdata.push({{ entry }});
{% endfor %}
</script>