我正试图在下面的代码中使用Faraday和Rails 4 for Google API Oauth:
class GoogleApisController < ApplicationController
def oauth2callback
require 'faraday'
render layout: false
conn = Faraday.new(:url => 'https://accounts.google.com',:ssl => {:verify => false}) do |faraday|
faraday.request :url_encoded
faraday.response :logger
faraday.adapter Faraday.default_adapter
end
@result = conn.post '/o/oauth2/token', {'code' => params[:code],
'client_id' => "some_id",
'client_secret' => "some_secret",
'redirect_uri' => "some_redirect_uri",
'grant_type' => 'authorization_code'}
end
end
但是当我做@result.body.inspect
时,它不会返回任何内容。
所以@result返回nil,似乎根本没有处理。
但是,当我在liveshell
中尝试上述代码时,似乎可行。
为什么会发生这种情况?
答案 0 :(得分:0)
如果在实例化您尝试render
的对象之前尝试render
,则模板实际上不会包含任何内容。将render
语句移到方法的底部将解决问题。