【发布时间】:2020-05-02 18:57:14
【问题描述】:
我正在尝试按照 Google Oauth 指南授予我的 Rails 应用编辑用户日历的权限。也许我理解错了,但guide 似乎说您所要做的就是向 Google API 发送一个特定的请求,这将提示同意屏幕为用户弹出。但是,我发送的请求没有错误,但没有任何反应。
我的应用程序已经过验证,我尝试使用的 URL 已添加到我的 Oauth 凭据中。从理论上讲,在这种情况下它应该无关紧要,但我也安装了“google-api-client”、“omniauth”和“omniauth-google-oauth2”gem。 URL 是带有 SSL 证书的 HTTPS。
我做错了什么?
# this is the controller action for my path, so the API is pinged when the page is loaded
def path
url = "https://accounts.google.com/o/oauth2/v2/auth?
scope=email%20profile%20calendar.events&
response_type=code&
redirect_uri=<URL>&
client_id=<CLIENT_ID>"
require 'open-uri'
require 'uri'
require 'net/http'
require 'json'
require 'net/https'
uri = URI(url)
response = Net::HTTP.get(uri)
end
【问题讨论】:
-
在服务器上运行的 Python 代码如何在客户端浏览器中打开一个窗口?当您使用 JavaScript 客户端时,会弹出该窗口。
-
@GuidoFlohr 该指南没有提及 Javascript 客户端。它的字面意思是 ping 该 API,下一步是为用户弹出一个窗口。您指的是什么 Javascript 客户端,我该如何实现它?
-
您的应用程序正在 IP 为 1.2.3.4 的服务器上运行,并通过向 Google 发送请求并在 IP 为 5.6.7.8 的用户笔记本电脑上打开浏览器窗口?那应该如何工作?我怎么能从我的电脑上授权你的应用程序在你的应用程序上?尝试为您的用例找到更好的教程。
-
而且,是的,它是 Ruby,而不是 Python 代码。 :)
标签: oauth oauth-2.0 google-api google-oauth google-api-client