16

A lotquestions已被問及回答關於在Google App Engine上運行服務器端JavaScript,但所有答案都與Java實例打交道,以便使用基於Java的JS解釋器,如Rhino,Rhino for Webapps等。是否可以從* Python * Google App Engine實例執行服務器端JavaScript?

有什麼辦法來執行服務器端上一個Python GAE實例javascript代碼?我正在考慮一些與pyv8完全一致的內容,但是支持App Engine(我想這意味着解釋器的純Python實現)。

我現在唯一可以提出的解決方案是使用某種粗暴的手段並行運行Java和Python GAE實例(通過不同的版本),以便它們都可以與同一個數據存儲區交談,讓Java實例託管JS代碼,然後使用API​​進行回傳。不太吸引人。

無需進入所有的「這是不必要的,你不應該這樣做」的討論 - 我知道這是不理想的,我只是好奇,如果是可以做到的。

+1

你不需要任何形式的黑客攻擊的運行相同的應用程序的Python和Java實例。只需將它們上傳到同一應用程序的不同版本即可。只有一個可以是默認版本,但這可能不是一個破壞交易的手段。 – 2010-11-13 21:04:50

+1

我在我的「嚴重黑客」評論中增加了一個說明 - 並不是說​​這兩個版本是一個巨大的黑客攻擊,只是必須並行運行Java和Python實例才能完成此操作。 – kamens 2010-11-13 22:16:25

回答

3

至於我能找到的:沒有

我已經做了一些搜索的,但似乎沒有人試圖實現一個純Python Javascript引擎,我不能責怪他們:對於極少數用例來說,這將是一項巨大的工作(不幸的是,你的是其中之一)。一對夫婦的項目— Grailbrowser和Pybrowser —有Python代碼來渲染HTML,那麼也許有一天旨在運行JavaScript,但它甚至還沒有開始,和他們都沒有看在積極發展。

它會不會發生,最有可能的方式是,如果谷歌是所提供的鸚鵡VM(可以運行各種動態語言)AppEngine上。這是一個很酷的想法,但我並沒有屏住呼吸。

2

什麼可能的工作是在Java實例中運行的Jython(和犀牛)。當然,那麼你將不得不通過Java API獲得任何應用程序服務,而不是Python應用程序,這很醜陋。

相關問題