我正在尝试使用OAuth2 for Elixir来获取访问令牌,以便与Google Cloud Storage API进行交互。我一直在尝试OAuth2游乐场,我可以提出请求,他们会把令牌还给我。在执行一个基本的GET请求(列出项目中的存储桶)时,它可以正常工作,但当然我需要在应用程序中自动获取令牌,而不是复制粘贴。
def token do
client = OAuth2.Client.new([
strategy: OAuth2.Strategy.AuthCode, #default
client_id: "myClientID",
client_secret: "myClientSecret",
site: "https://www.googleapis.com",
redirect_uri: "https%3A%2F%2Fdevelopers.google.com%2Foauthplayground" #I HAVE NO IDEA WHAT SHOULD BE HERE???
])
token =
client
|> OAuth2.Client.put_param(:code, "myAuthCode")
|> OAuth2.Client.get_token!()
我一直收到“找不到”的信息。
我对此很困惑,如果有人能帮上忙,我会非常感激的。
编辑:
显然,请求应该是这样的:
https://accounts.google.com/o/oauth2/v2/auth?response_type=token&client_id=myClientID&nonce=someRandomStringIthink&scope=https://www.googleapis.com/auth/devstorage.full_control&redirect_uri=WHEREDOIGETTHIS
我仍然不知道在哪里可以找到重定向URI。文档说它应该在开发人员的控制台中。
发布于 2016-03-30 04:41:47
你可以查看一个谷歌认证here的例子。它涵盖了与gcs交互所需的所有内容。
https://stackoverflow.com/questions/35799735
复制相似问题