Как добавить localhost: 3000 в приложение Facebook для разработки
Я работаю над приложением Rails 4. На моем ноутбуке разработка выполняется в localhost:3000
. Домен сайта:roomidex.com
.
как я могу настроить приложение Facebook, чтобы оно работало на производстве и разработке?
вот текущая конфигурация:
App Domains: roomidex.com
Website With Facebook Login:
Site URL: http://www.roomidex.com
когда я пытаюсь сделать логин Facebook на localhost: 3000, я получаю эту не удивительную ошибку:
{
"error": {
"message": "Invalid redirect_uri: Given URL is not allowed by the Application configuration.",
"type": "OAuthException",
"code": 191
}
}
8 ответов
на странице приложения Facebook Нажмите "изменить приложение", затем нажмите" Дополнительно " в левой навигации. Затем для" Valid OAuth redirect URIs " добавьте http://localhost:3000
... или все, что вы хотите, чтобы принятое перенаправление было.
вы можете создать тестовое приложение, подключенное к вашему основному приложению. На панели мониторинга или странице настроек для основного приложения. прокрутите вниз, и вы увидите "тестовые приложения" в меню, которое работает в левой части страницы. Тестовое приложение унаследует настройки от основного приложения, но будет постоянно находиться в режиме разработки и будет иметь свой собственный ID.
дополнительная информация о тестовых приложениях здесь: https://developers.facebook.com/docs/apps/test-apps/
протокол для настройки приложения для работы на localhost изменилось. После того, как вы настроили тестовое приложение, это объясняет шаги по его настройке для работы на localhost:
ваша ошибка говорит
localhost URL не допускается в приложении
Я знаю, FB не дает s* * t о объяснении, что делать в эти моменты, однако, насколько я обеспокоен, я нашел обходной путь.
в основном, вам нужно "белый список" locahost url в вашем приложении
вот что вы собираетесь делать
- перейти к приложению правка / сводка страница
- в четвертом поле Приложение Доменов, вы уже должны иметь
roomidex.com
, поэтому добавьте еще один адресlocalhost
- URL-адреса, упомянутые выше, действительны только в том случае, если каждый из них помещен во вкладки, где вы установили, как вы
app integrates with Facebook
(сайт с логином facebook, приложение на facebook, мобильный интернет, ...) - я делаю это: я ставлю свой рабочий URL, в вашем случае roomidex.com в
Website with facebook login
и мой тест, localhost в URL, либо вApp on facebook
илиPage tab
июня 2015
перейдите в Мои приложения > Настройки > Основные
Приложение Доменов
- localhost в
Веб-Сайт
- URL:http://localhost:8888/
- мобильный URL:http://localhost:8888/
Он не работал с портом 80 или без какого-либо порта, к сожалению.
добавлять localhost
до Valid OAuth redirect URIs
в тестовом приложении не работа для меня, но добавлять 127.0.0.1
сделал.
Facebook теперь требует, чтобы" действительный OAuth redirect URIs " был https.
чтобы использовать https локально (localhost:3000), я использовал [ngrok][1], который позволяет использовать https, предоставляя туннель. Для этого:
- я зашла на их сайт и скачал их программу
- я извлек файл для программы
- в моей консоли я вошел в каталог, в который был извлечен ngrok, и ввел "grok http 3000" на моей машине Windows, другие могут использовать './ grok http 3000'
- после ввода этого ngrok предоставил адрес https, который я поместил в действительное поле OAuth Redirect URIs в Facebook
- затем я запустил свой сервер и смог получить к нему доступ, используя этот адрес https вместо localhost: 3000
просто создайте два приложения.
один для тестирования и один для выпуска. Вы не можете предоставить приложению отдельные конфигурации URL-адресов.
просто отредактируйте файл hosts с вашим доменом, который указывает на localhost, и он должен работать нормально.