如何将变量从python应用程序传递到谷歌应用程序引擎上的客户端javascript

时间:2013-06-29 07:22:14

标签: javascript python google-app-engine

有谁知道如何将数据从服务器代码(用python编写并在google应用程序引擎上运行)传递给客户端javascript?

我知道如何为php和javascript做到这一点:在php中,制作json格式的变量,我可以使用类似的东西在javascript中调用变量:

<script> var data = <?php varname_in_php ?>; </script>

如何使用Google应用引擎为应用程序实现相同的功能?

我正在尝试实现一些应用程序,它将使用Python解析一些统计数据,然后将数据传递给javascript以用于绘图。

提前致谢!

2 个答案:

答案 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>