2013-03-17 4 views
1

У меня очень странная проблема, но только на сервере производства.проблемы с omniauth-facebook «Invalid_Credentials»

Я использовал этот драгоценный камень в своем Gemfile.

gem "omniauth-facebook", "~> 1.4.1" 

Но неожиданно началось получение следующей ошибки при производстве, отлично работает на местном уровне.

heroku[router]: at=info method=GET path=/auth/failure?message=invalid_credentials&strategy=facebook host=www.myapp.com fwd="182.189.55.111" dyno=web.1 queue=0 wait=0ms connect=1ms service=90ms status=302 bytes=95 

Обысканных вокруг различных форумов и люди говорят, временное решение, просто вернуться к 1.4.0 версии т.е.

gem "omniauth-facebook", "1.4.0" 

Он также отлично работает на местном, но начало получать еще одно сообщения об ошибке при производстве ,

OmniAuth::Strategies::Facebook::NoAuthorizationCodeError (must pass either a `code` parameter or a signed request (via `signed_request` parameter or a `fbsr_XXX` cookie)): 

this ссылка говорит снова обновить эту версию 1.4.1

КАЖЕТСЯ к быть тупиковой/перекручивание ситуации здесь. Может ли кто-нибудь столкнуться с этой проблемой?

Заранее спасибо.

ответ

1

Предполагается, что вы используете JS SDK для входа в систему? Может быть, ваш код выглядит примерно так:

if (response.authResponse) { 
    var url = "/auth/facebook/callback"; 
    window.location = url; 
} 

Я не уверен, почему подписанный запрос не передается вместе автоматически, но я нашел обходной путь, чтобы нормально работать:

if (response.authResponse) { 
    var url = "/auth/facebook/callback"; 
    url += '&' + $.param({ signed_request: response.authResponse.signedRequest }); 
    window.location = url; 
} 
Смежные вопросы