我正在尝试为 Elixir 使用 OAuth2来获取访问令牌以与 Google Cloud Storage API 进行交互。我一直在尝试使用 OAuth2 Playground,我可以提出请求,然后他们将令牌还给我。在执行基本的 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。文档说它应该在开发人员的控制台中。