私は吸う。私は Podio API を調べていて、サンプルの Podio Rails アプリを試してその仕組みを学ぼうとしていますが、いくつか問題があります。(主な質問は下部にあります。) 最初は SSL エラーが発生しました。
Started POST "/sessions/createfromappauth" for 127.0.0.1 at 2015-08-14 09:37:38 -0700
Connecting to database specified by database.yml
Processing by SessionsController#createfromappauth as HTML
Parameters: {"utf8"=>"✓", "authenticitytoken"=>"xxxxx=", "appid"=>"xxxxx", "app_token"=>"xxxxxx", "commit"=>"Authenticate as app"}
Completed 500 Internal Server Error in 660ms
OpenSSL::SSL::SSLError (SSLconnect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed):
app/controllers/sessionscontroller.rb:23:in `createfromapp_auth'
Mac で SSL 証明書を更新してから、Rails アプリのすべての gem を更新しようとしましたが、どちらも機能しませんでした。最後に、cacert.pem ファイルを /lib ディレクトリに配置して修正しました。
残念ながら、今はエラーが発生します:
Started POST "/sessions/create_from_app_auth" for 127.0.0.1 at 2015-08-17 10:39:38 -0700
Processing by SessionsController#create_from_app_auth as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"xxxx", "app_id"=>"xxxx", "app_token"=>"xxxx", "commit"=>"Authenticate as app"}
Completed 500 Internal Server Error in 273ms
TypeError (no implicit conversion of Pathname into String):
app/controllers/sessions_controller.rb:23:in `create_from_app_auth'
私はMacを使用しています
- Ruby: 2.2.1p85 (2015-02-26 リビジョン 49769) [x86_64-darwin14]
- レール: 3.2.8
- OpenSSL 1.0.2d 2015 年 7 月 9 日
問題のエラーの原因となっている sessions_controller のコードは次のとおりです。
def create_from_app_auth
Podio.setup(
:api_url => 'https://api.podio.com',
:api_key => ENV['PODIO_CLIENT_ID'],
:api_secret => ENV['PODIO_CLIENT_SECRET']
)
Podio.client.authenticate_with_app(params[:app_id], params[:app_token])
session[:podio_access_token] = Podio.client.oauth_token.access_token
session[:podio_refresh_token] = Podio.client.oauth_token.refresh_token
redirect_to root_url, :notice => "Signed in!"
end
TypeError または SSLError を修正して TypeError を取得しないようにする方法についてのアイデアはありますか? 前もって感謝します!