2016-03-27 19 views
1

RoR uygulamamı herhangi bir şans olmaksızın bir gün boyunca Facebook API'ye bağlanmak için kullanmaya çalışıyorum. Ruby on Rails ve Koala'yı kullanıyorum.Koala ve Ruby on Rails kullanarak bir Facebook uygulama erişim belirteci edinin

şöyle ben bağlanmayı deneyin:

graph = Koala::Facebook::API.new(User_Token) 

Sonra sorun yoktur. (Kullanıcı jetonu https://developers.facebook.com/tools/access_token/'dan edinildi)

Sorun, kullanıcı jetonunun sona ermesidir. Uygulamanın Kullanıcı Simgesini genişletmenin bir yolu olduğunun farkındayım, ancak buna başvurmayı tercih etmem.

Daha ziyade, Kullanıcı Simgesinin yerine kullanabileceğim bir APP ERİŞİM TOKEN (https://developers.facebook.com/docs/facebook-login/access-tokens#apptokens uyarınca) almak için uygulamamın kimliğini doğrulamaya çalışıyorum. Lütfen bunun Uygulama Simgesini belirtmediğine dikkat edin. ilk bağlantıda atıfta bulunulan).

App Erişim Token elde etmek için, bir öğretici takip ettim ve benim denetleyicisi bu kodu sağlanan: Ben benim routes.rb içinde

id = <my app id> 
secret = <my app secret> 
callbackUrl = "http://localhost:3000/events/appcallback" 
@ouath = Koala::Facebook::OAuth.new(id, secret, callbackUrl) 
redirect_to @oauth.url_for_oauth_code() 

:

match "events/appcallback" => "events#appCalledBack", via: :get 

budur sadece geri bildirimin işe yaradığını test etmek için.

Niyetim böyle bir şey yapmak daha sonra:

App_Access_Token = @oauth.get_access_token(params[:code]) 

Ama bunun yerine bir hata alıyorum: EventsController # indeksi nil için tanımsız yöntem `url_for_oauth_code' in NoMethodError: NilClass

unutmayınız Bir kullanıcı için erişim belirteci almakla ilgilenmiyorum;

graph = Koala::Facebook::API.new(App_Access_Token) 

Herhangi bir yardım büyük, büyük takdir olacaktır: Bir la API bağlanabilmek yüzden uygulamam için bir tane istiyorum.

cevap

0

Bu yüzden rotanız EventsController#index'a gittiğinden yanlış görünüyor. Bazı günlükleri ve ilgili rotaları gönderir misiniz?