我已经在dropbox上创建了一个应用程序,我正在遵循https://github.com/robin850/carrierwave-dropbox步骤,但无法获得访问令牌。它有400个坏请求,虽然我提供了正确的密钥和应用程序秘密,但无法获得链接,以允许我的应用程序。
下面是错误,我正在创建一个ruby-on-rails应用程序:
rake aborted!
DropboxAuthError: Error getting request token. Is your app key and secret correctly set? Server returned 400: Bad Request.
/var/lib/gems/2.3.0/gems/dropbox-sdk-1.6.5/lib/dropbox_sdk.rb:277:in `get_token'
/var/lib/gems/2.3.0/gems/dropbox-sdk-1.6.5/lib/dropbox_sdk.rb:293:in `get_request_token'
/var/lib/gems/2.3.0/gems/dropbox-sdk-1.6.5/lib/dropbox_sdk.rb:299:in `get_authorize_url'
/var/lib/gems/2.3.0/gems/carrierwave-dropbox-1.2.1/lib/carrierwave/dropbox/rake.rb:13:in `authorize'
/var/lib/gems/2.3.0/gems/carrierwave-dropbox-1.2.1/lib/carrierwave/dropbox/authorize.rake:11:in `block (2 levels) in <top (required)>'
/var/lib/gems/2.3.0/gems/rake-12.1.0/exe/rake:27:in `<top (required)>'
Tasks: TOP => dropbox:authorize
(See full trace by running task with --trace)发布于 2017-10-06 15:40:36
你配置carrierwave了吗?
CarrierWave.configure do |config|
config.dropbox_app_key = ENV["APP_KEY"]
config.dropbox_app_secret = ENV["APP_SECRET"]
config.dropbox_access_token = ENV["ACCESS_TOKEN"]
config.dropbox_access_token_secret = ENV["ACCESS_TOKEN_SECRET"]
config.dropbox_user_id = ENV["USER_ID"]
config.dropbox_access_type = "dropbox"
end发布于 2017-10-06 21:51:41
下面是一个希望它能起作用的例子:
1-创建文件config/config.yml并在此处提供您的密钥:
default: &default
development:
<<: *default
app_key: "your_app_key"
production: &production
<<: *default
app_key: "your_app_key"
staging: &staging
<<: *default
app_key: "your_app_key"2-在environment.rb文件中
# Load the Rails application.
require_relative 'application'
APP_CONFIG = YAML.load_file("#{Rails.root}/config/config.yml")[Rails.env]
# Initialize the Rails application.
Rails.application.initialize!3-然后您可以在carrierwave.rb文件中使用
CarrierWave.configure do |config|
config.dropbox_app_key = APP_CONFIG['app_key']
//and your another configuration so on...
}
end如果你有正确的api密钥权限,那么它应该可以工作。谢谢
https://stackoverflow.com/questions/46599604
复制相似问题