2012-04-24 29 views
2

我嘗試在Google App Engine中構建應用程序,但我有一些問題,不知道如何解決。兩個AppEngine應用程序如何相互通信?

我嘗試構建兩個應用程序,一個是從用戶處獲得一個字符串,另一個是處理字符串如分或加密。

我的問題是如何在Google App Engine中的兩個應用程序之間傳輸字符串?我可以建立一個應用程序只處理字符串,不要呈現WEB頁面。

任何人都可以給我一些提示?非常感謝。

+2

有沒有您想要一個簡單的功能分成兩個單獨的應用程序的一些特殊的原因?這聽起來好像你試圖解決的問題不過是AppEngine非常容易和自然的簡單請求/響應。我強烈建議您閱讀「入門指南」中的示例: https://developers.google.com/appengine/docs/python/gettingstarted/ – 2012-04-24 13:32:53

+0

@ user1353777:爲什麼你想要兩個單獨的應用程序? – 2012-04-24 13:38:15

+0

我想模擬兩個不同的服務提供者,一個可以從用戶處獲得String,另一個處理字符串。用戶只需要知道第一個服務提供商。 – user1353777 2012-04-24 14:09:55

回答

4

兩個AppEngine應用程序彼此通信的唯一方法是通過普通的HTTP請求/響應模型。對於您的情況,我們將擁有應用程序A,該應用程序答覆來自提供要處理的字符串的用戶的請求。應用程序B將接收來自應用程序A的請求,該應用程序傳遞要處理的字符串。

  1. 應用甲處理URL /providestring?string=...其中...是一些任意值
  2. 應用B處理URL /processstring?string=...其中...
  3. 用戶使用瀏覽或寫入的應用程序的一些任意值致電/providestring
  4. 應用A的 URL處理代碼的運行,並提取string參數
  5. 應用一個使用URLFetch調用應用B的/processstring
  6. 應用B的 URL處理代碼的運行,並提取string參數的值的值並執行任何類型的處理,並且向調用者發送某種響應。
0

做到這一點的一種方法是建立共享數據庫。應用程序A會吸收用戶數據並將其保存到數據庫中。應用程序B將提取用戶數據並對其進行處理。

接受的功能請求用於多個App Engine應用程序共享數據存儲訪問[1]。

多個App Engine應用程序可以共享對Google Cloud SQL實例的訪問[2]。

To grant access to your App Engine application: 

From the Google Cloud SQL pane of the APIs Console, find the instance that you 
want to grant access to and click the on the name of your instance. 
Click on the Instance settings button on the instance's dashboard. 
On the Instance settings window that appears, enter your Google App Engine 
application ID under the Authorized applications section. You can grant access to 
multiple applications, by entering them one at a time. 

注意:您可以使用數據存儲在一個應用程序中實現此目的。以下是幾種可接受的模式:

  1. RequestHandler接收用戶數據,將任務排隊以處理數據並將其保存。
  2. RequestHandler接收用戶數據&將其保存。 cron作業將提取該類型的所有最新模型,處理它們,並保存處理後的數據。

[1] https://code.google.com/p/googleappengine/issues/detail?id=1300

[2] https://developers.google.com/cloud-sql/docs/before_you_begin#configure_access_control

+0

這兩者都很好,但都不能真正幫助用戶解決他們的問題。 – 2012-04-27 04:17:42

+0

我想我忽略了這一點「如果你想使用一個共享數據庫,其中一個從用戶那裏獲取並寫入數據庫,另一個從數據庫讀取和處理數據,這就是你如何做到的」 – 2012-05-02 18:36:54

相關問題