2013-04-25 2 views
0

Я пытаюсь запустить простой вызов аутентификации для извлечения профилей через linkedin.
Я бегу рубин на рельсах и попробовал пример «http://developer.linkedin.com/documents/code-samples», объясненный здесь.получение «неопределенного метода` auth_code »для« Client function »: String«

При запуске мой код, я получаю эту ошибку
undefined method `auth_code' for "Client function":String

я включил в моем Gemfile следующее:

gem 'linkedin' 
    gem 'oauth2' 
    gem 'oauth' 

С помощью следующего кода:

#Instantiate your OAuth2 client Object 
    def client 
    OAuth2::Client.new(
     CONSUMER_KEY, 
     CONSUMER_SECRET, 
     :authorize_url => "/uas/oauth2/authorization?response_type=code", 
     :token_url => "/uas/oauth2/accessToken", 
     :site => "https://www.linkedin.com" 
    ) 
    pp 'Client function' 
    end 

    def test1 
    pp ' to authorize function' 
    authorize 
    end 

    def authorize 
    pp 'in authorize' 
    #Redirect user in order to authenticate 
    redirect_to client.auth_code.authorize_url(:scope => 'r_fullprofile r_emailaddress r_network', 
               :state => STATE, 
               :redirect_uri => REDIRECT_URI) 
    end 

Итак, когда он попадает в redirect_to client.auth_code.authorize_url(), я получаю undefined для «auth_code».

Любая причина, почему это так? мне нужен другой тип драгоценного камня. Я попытался установить пакет и установить пакет. Ничего не происходит.

Любая помощь очень признательна. Спасибо

ответ

1

Ваш клиентский метод возвращает строку «Функция клиента» с помощью метода pp вместо созданного вами экземпляра клиента.

+0

Цените его. немой! новый для рубинов – rbz

1

Метод ruby ​​возвращает результат последнего оператора. В вашем случае это заявление pp. Либо удалите pp, либо поместите его в начале метода.

+0

Вам тоже. Спасибо, оцените. – rbz

Смежные вопросы