2

我尝试在 Google App Engine 中构建应用程序,但我有一些问题,不知道如何解决。

我尝试构建两个应用程序,一个是从用户那里获取一个字符串,另一个是像划分或加密一样处理字符串。

我的问题是如何在 Google App Engine 中的两个应用程序之间传输字符串?我可以构建一个应用程序只处理字符串,不显示WEB页面。

任何人都可以给我一些提示吗?多谢。

4

2 回答 2

4

两个 AppEngine 应用程序相互通信的唯一方法是通过正常的 HTTP 请求/响应模型。对于您的情况,我们将拥有 App A,它回答来自用户的请求,用户提供要处理的字符串。App B 将接收来自 App A 的请求,该请求将传递要处理的字符串。

  1. 应用程序 A处理一些任意值/providestring?string=...的URL...
  2. 应用 B处理任意值/processstring?string=...的URL...
  3. 用户使用浏览器或编写应用程序来调用/providestring
  4. 应用 A 的URL 处理代码运行并提取string参数的值
  5. App A使用URLFetch调用App B 的 /processstring
  6. 应用程序 B 的URL 处理代码运行并提取string参数的值,并执行它所做的任何类型的处理,并向调用者发送某种类型的响应。
于 2012-04-24T14:39:49.230 回答
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

于 2012-04-24T22:31:50.473 回答