【问题标题】:Is it possible to execute server-side javascript from a *Python* Google App Engine instance?是否可以从 *Python* Google App Engine 实例执行服务器端 javascript?
【发布时间】:2011-05-09 15:30:46
【问题描述】:

questions 中的lot 已被询问并回答了有关在 Google App Engine 上运行服务器端 javascript 的问题,但所有答案都涉及 Java 实例,以便使用基于 Java 的 JS 解释器,如 Rhino, Rhino for Webapps

有没有办法在 Python GAE 实例上执行服务器端 javascript 代码?我的想法与pyv8 完全一致,但支持App Engine(我猜这意味着解释器的纯python 实现)。

目前我能想到的唯一解决方案是使用某种粗略的技巧来并行运行 Java 和 Python GAE 实例(通过不同的版本),这样它们就可以与同一个数据存储区通信,让 Java 实例托管 JS 代码,并使用 API 来回交谈。不是很吸引人。

没有必要参与所有“这是不必要的,你不应该这样做”的讨论——我知道这并不理想,我只是好奇是否可以做到。

【问题讨论】:

  • 运行同一应用程序的 Python 和 Java 实例不需要任何技巧。只需将它们上传到同一应用程序的不同版本。只有一个可以是默认版本,但这可能不会破坏交易。
  • 我在我的“严重破解”评论中添加了一个说明——这两个版本并不是一个巨大的破解,只是必须并排运行 Java 和 Python 实例才能完成这感觉很恶心。

标签: javascript python google-app-engine interpreter serverside-javascript


【解决方案1】:

据我所知:没有

我做了一些搜索,但似乎没有人尝试实现纯 Python Javascript 引擎,我不能责怪他们:对于极少数用例(不幸的是,你的就是其中之一)。有几个项目——Grailbrowser 和 Pybrowser——有 Python 代码来呈现 HTML,所以有一天可能会以运行 javascript 为目标,但它甚至还没有开始,而且它们都没有积极开发。

最有可能发生的方式是 Google 在 Appengine 上提供 Parrot VM(可以运行各种动态语言)。这是一个很酷的想法,但我没有屏住呼吸。

【讨论】:

    【解决方案2】:

    可行的方法是在 Java 实例中运行 Jython(和 Rhino)。当然,那么你必须通过 Java API 访问任何 App 服务,而不是 Python 服务,那样会很丑陋。

    【讨论】:

      【解决方案3】:

      【讨论】:

      • 这仍然是针对 java AppEngine API 的 Rhino 解决方案。
      【解决方案4】:

      我目前正在尝试用 PyJON 解决同样的问题

      http://code.google.com/p/pyjon/

      似乎是一个纯 Python JavaScrit 解析器和解释器。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-21
        • 1970-01-01
        • 2014-05-19
        • 1970-01-01
        • 2015-12-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多