1

我按照此说明将我的应用程序引擎 python Web 服务与 Google 存储连接起来,特别是为了能够使用文件 API。我经历了嗡嗡声的例子,但似乎对我不起作用。我需要 Web 服务在后台进行授权,以便能够从存储中检索我的文件。

我正在尝试使用装饰器来传递我的 client_id 和 client_secret 但这个过程对我来说不是很清楚。有人可以提供示例或在此过程中进行详细说明吗?

编辑:我正在使用 python 2.7 运行时。

4

3 回答 3

1

这可能不是最直接的答案,但您探索过 App Engine 上内置的 Google Storage API 吗?

http://code.google.com/appengine/docs/python/googlestorage/

这使您可以一起绕过本机 API。

于 2011-12-01T02:25:13.060 回答
1

通过使用来自au-to-do google appengine 项目的 gslite.py 脚本和我的凭据,我设法让它正常运行。

于 2011-12-12T13:22:14.877 回答
-1

如果您将 apiclient 与本机 REST API 一起使用,它看起来像这样......

from apiclient.discovery import build
import httplib2
from oauth2client.appengine import OAuth2Decorator

decorator = OAuth2Decorator(client_id=YOUR_GOOGLE_CLIENT_ID,
                            client_secret=YOUR_GOOGLE_CLIENT_SECRET,
                            scope=GOOGLE_SERVICE_SCOPE,
                            )

class MainHandler(webapp.RequestHandler):

   @decorator.oauth_required
   def get(self):
    service = build(SERVICE_NAME, 
                    SERVICE_VERSION,
                    http=decorator.http())
    magic = service.method()

查看其他 API 的一些 apiclient 示例可能会有所帮助。例如,有一个 App Engine 与同样使用 OAuth2 的 Tasks API 集成的好例子。

http://code.google.com/appengine/articles/python/getting_started_with_tasks_api.html

于 2011-12-01T02:31:27.623 回答