【发布时间】:2016-04-05 21:45:53
【问题描述】:
我让 Doorkeeper 在本地工作,但一旦部署到生产环境,我就会遇到一个奇怪的问题。我无法创建新应用程序,请参见下文:
$> app = Doorkeeper::Application.new :name => 'test', :redirect_uri => 'http://test.com'
=> #<Doorkeeper::Application id: nil, name: "test", uid: nil, secret: nil, redirect_uri: "http://test.com", scopes: "", created_at: nil, updated_at: nil>
$> app.save
(0.8ms) BEGIN
(0.8ms) BEGIN
Doorkeeper::Application Exists (0.7ms) SELECT 1 AS one FROM `oauth_applications` WHERE `oauth_applications`.`uid` = BINARY '56bf468e5a1d116e3daef75ecc49b6b6ba313a9a79815b5b4683d56851880c49' LIMIT 1
Doorkeeper::Application Exists (0.7ms) SELECT 1 AS one FROM `oauth_applications` WHERE `oauth_applications`.`uid` = BINARY '56bf468e5a1d116e3daef75ecc49b6b6ba313a9a79815b5b4683d56851880c49' LIMIT 1
(0.4ms) ROLLBACK
(0.4ms) ROLLBACK
=> false
oauth_applications 表 100% 为空。
我正在服务器上运行它(在本地它按预期工作),如果您需要更多信息,请告诉我。
编辑:
我也试过了:
$>app.save!
并得到以下错误:
ActiveRecord::RecordInvalid: Validation failed: Redirect URI must be an HTTPS/SSL URI.
【问题讨论】:
-
Redirect URI must be an HTTPS/SSL URI.尝试将https://添加到您的重定向 uri。您可能需要安装 SSH 证书,具体取决于您的平台(在 heroku 上自动完成)。 -
成功了!谢谢,如果您将其作为答案,我将其标记为正确!我正在为我的主机使用 AWS Elastic Beanstalk,看起来我需要找到一种方法来获得 SSH 证书。
标签: ruby-on-rails ruby oauth-2.0 doorkeeper