0

我已经工作了一段时间,试图在 Google App Engine 上安装 SimpleAuth,但我遇到了麻烦。首先在示例代码的底部,他们有这个:

def _get_consumer_info_for(self, provider):
       """Should return a tuple (key, secret) for auth init requests.
       For OAuth 2.0 you should also return a scope, e.g.
       ('my app id', 'my app secret', 'email,user_about_me')

       The scope depends solely on the provider.
       See example/secrets.py.template
       """
       return secrets.AUTH_CONFIG[provider]

而且我在任何地方都看不到秘密文件,也看不到它应该做什么。

然后除了那个小问题之外,我很好奇我应该如何将提供者及其登录 URL 呈现给用户。此页面:https ://github.com/crhym3/simpleauth/blob/master/example/handlers.py对一般设置有很好的描述,但没有对我们实际需要传递给用户的内容进行任何描述让他们登录。

谢谢!

4

1 回答 1

1

首先,请注意这只是一个示例,因此出于演示目的简化了一些代码部分。

secrets是一个单独的模块。自述文件说将secrets.py.template复制到 secrets.py 并设置正确的客户端/消费者 ID 和机密。同样,请参阅 README 以获取有关从何处获取不同提供商的客户端/机密的信息。

渲染由你决定。我做的一个例子是这样的:

<p>Try logging in with one of these:</p>
<a href="/auth/google">Google</a>
<a href="/auth/facebook">Facebook</a>
<a href="/auth/openid?identity_url=me.yahoo.com">Yahoo! (OpenID)</a>
<a href="/auth/twitter">Twitter</a>
<a href="/auth/linkedin">LinkedIn</a>
<a href="/auth/windows_live">Windows Live</a>

这些/auth/...链接应该路由到与SimpleAuthHandler.

您可以在https://simpleauth.appspot.com上看到示例应用程序,希望它能澄清一些事情。

于 2012-10-01T09:25:48.923 回答