API facebook OpenGraph для Rails (FBGraph)

Я пытаюсь использовать FBGraph, чтобы мое приложение публиковало сообщения на стене пользователей. Однако все API-интерфейсы мне чужды, и я просто пытаюсь изменить ситуацию и посмотреть, что произойдет. Прямо сейчас, я получаю сообщение об ошибке

{
   "error": {
      "type": "OAuthException",
      "message": "Invalid redirect_uri: Given URL is not allowed by the Application configuration."
   }
}

Кто-нибудь знает, что значит redirect_uri? Что бы это было на странице настроек приложения на facebook?

Ответы

Ответ 1

Я не эксперт по facebook, но я столкнулся с той же проблемой, что и вы, несколько часов назад, когда я пытался войти в систему через веб-приложение с Facebook.

Кажется, что redirect_uri, который вы указали при вызове https://graph.facebook.com/oauth/authorize, должен находиться в том же домене, что и адрес подключения ваше приложение. (вы можете установить этот соединительный URL из раздела Connect в настройках вашего приложения)

С уважением, Флорин

Ответ 2

Флорин прав. Просто обратите внимание здесь. При локальном тестировании вам необходимо установить его:

http://localhost:3000/ (или независимо от вашего порта сервера приложений)

Затем, когда вы переместите его на производство, установите его на свой обычный URL:

http://yourdomain.com/

У меня есть отдельное приложение facebook, которое я использую в разработке для тестирования, поэтому мне не нужно переключаться между ними, и я настраивал ключи в файле настроек, в котором есть мои токены для приложений разработки и производства.

В любом случае, похоже, что вы почти там. Он вернет обратно к URL-адресу обратного вызова. Должно быть хорошо после обновления URL facebook_connect

Ответ 3

Возможно, вам нужно проверить настройки > Основные > Основные сведения > Домен приложения. Я считаю, что шляпу нужно правильно установить и для redirect_uri.

Ответ 4

У меня была такая же проблема.

В моем случае я настроил URL-адрес сайта на facebook как: "http://localhost: 3000", это был неправильный URL-адрес для facebook.

Причиной этого является отсутствие/в конце URL-адреса, поэтому правильный URL-адрес сайта должен быть: "HTTP://локальный: 3000/"

Ответ 5

Просто подтвердите свой "Идентификатор приложения". В моем случае у меня была эта проблема, потому что я использовал ID из моего другого проекта, над которым я работал. Довольно очевидно, но я потерял некоторое время.

Ответ 6

Я должен был убедиться, что у меня тоже есть область видимости:

config.omniauth :facebook, 'xxxx', 'xxx', :scope => 'offline_access,email,publish_stream'

Кроме того, вам действительно нужно убедиться, что вы подождете пару минут, потому что для распространения требуется время.