Я писал игру для Facebook, используя Rails и jQuery. С тех пор, как я начал использовать Facebook Javascript SDK, использование localhost в качестве домена приложения, похоже, работало нормально. Я смог протестировать свою игру как локально, так и на Heroku.
Похоже, что за прошедший день Facebook сильно обновил пользовательский интерфейс разработчика. Теперь, если я добавлю localhost в качестве домена приложения, я получу следующую ошибку:
Он должен быть получен из URL-адреса холста, URL-адреса защищенного холста, URL-адреса сайта, URL-адреса мобильного сайта, URL-адреса вкладки страницы или URL-адреса вкладки защищенной страницы. Проверьте и исправьте следующие домены: localhost
Моя игра также теперь не работает локально, и я получаю сообщение об ошибке, когда Javascript SDK входит в систему пользователя:
Код ошибки API: 191 Описание ошибки API: указанный URL-адрес не принадлежит приложению. Сообщение об ошибке: недопустимый redirect_uri: указанный URL-адрес не разрешен конфигурацией приложения.
Этого не происходит, когда я развертываю свою игру, поскольку herokuapp.com считается допустимым доменом приложения.
Как мне разработать и протестировать свою игру, если я больше не могу использовать localhost или 127.0.0.1?
источник
Ответы:
Протокол, кажется, продолжает меняться, и принятый ответ сегодня у меня не сработал. В случае, если это поможет другим поисковикам, вот что сработало для меня:
1.) В центре под первым полем опций нажмите «+ Добавить платформу» и выберите «Веб-сайт» (или что-то еще, подходящее для вашего приложения).
2.) В открывшемся окне для только что добавленного веб-сайта: URL-адрес сайта:
http://localhost:3000/
3.) В поле выше (Настройки => Основные): Домен приложения:
localhost
4.) В правом нижнем углу нажмите «Сохранить изменения».
5.) Убедитесь, что идентификатор приложения правильно скопирован и вставлен в код. (Идентификатор находится в первом поле на этой странице, если он вам снова понадобится.)
источник
источник
Вы по-прежнему можете протестировать свое приложение, не развертывая его на удаленном сервере, таком как heroku. Хитрость заключается в том, чтобы обновить
etc/hosts
файл следующим образом:Затем в настройках приложения Facebook введите [ http: //] mydomain.com без "[" и "]"
Это сработало для меня так
источник
Для всех, кто возится с этим в 2017 году. Интерфейс снова изменился. Я хотел прокомментировать ответ, но у меня недостаточно репутации. URL-адрес localhost вашего приложения теперь нужно скопировать в три места. В настоящее время (26 октября 2017 г.) последовательность такова:
1.) Нажмите «Настройки» в левом меню.
2.) В центре под первым полем опций нажмите «+ Добавить платформу» и выберите «Веб-сайт» (или то, что подходит для вашего приложения).
3.) В поле, которое появляется для только что добавленного вами веб-сайта, скопируйте URL-адрес вашего сайта localhost (например, http: // localhost: 3000 / ).
4.) В поле выше "Домен приложения" скопируйте тот же URL.
5.) В правом нижнем углу нажмите «Сохранить изменения».
6.) В левом меню в разделе «Продукты» нажмите «Вход в Facebook» (или добавьте его с помощью «+ Добавить продукты», если он недоступен).
7.) Теперь вы находитесь в настройках входа в Facebook. Скопируйте тот же URL в поле "Действительные URI перенаправления OAuth".
Это должно работать.
источник
Просто добавьте localhost в качестве URL-адреса вашего холста или URL-адреса мобильного сайта, это позволит вам указать как localhost, так и herokuapp.com в настройках домена приложения. Затем, когда ваше приложение будет запущено в производство, просто удалите его.
источник
Это неправильный путь. Вы должны создать тестовое приложение, используя вкладку «Тест» в настройках приложения. Затем вы можете ввести URL-адрес стадии разработки (например, localhost) в свое приложение.
источник
Решение с использованием Firebase
Чтобы это заработало
localhost
, порт3000
я сделал следующее:localhost
в домены приложенийhttp://localhost:3000/
на сайт URL выбранным «+ Добавить платформу»До этого момента я следил за всеми предыдущими ответами, представленными здесь, но ничего не работало.
Так...
В меню слева выберите «Добавить продукт».
Добавить «Вход в Facebook»
Вам будет представлена карусель рабочего процесса с доменом по умолчанию
http://localhost:3000/
, нажмите «продолжить» до конца.Выберите «Вход в Facebook> Настройки» в меню продукта.
Введите URI перенаправления Firebase OAuth (его можно найти при включении входа в Facebook в консоли firebase https://console.firebase.google.com , пример ниже)
Готово.
источник
Попробуйте использовать URL-адрес с портом, например
У меня была такая же проблема, и я нашел это решение прямо сейчас.
источник
Это работает для меня в heroku, вещь localhost не работает (для меня). Я надеюсь, что это помогает
1.) В центре под первым полем параметров нажмите «+ Добавить платформу» и выберите «Веб-сайт» (или что-то еще, подходящее для вашего приложения).
2.) В открывшемся окне для только что добавленного веб-сайта: URL-адрес сайта: http://MYAPP.herokuapp.com/ (замените MYAPP на имя вашего приложения)
3.) В поле выше (Настройки => Базовый): Домен приложения: MYAPP.herokuapp.com (замените MYAPP именем вашего приложения)
4.) В правом нижнем углу нажмите «Сохранить изменения».
источник
Просто примечание для некоторых других, которые, возможно, борются с этим, как и я. Мне не удалось заставить это работать с «тестовыми» приложениями. Используя мои фактические настройки приложения (и просто добавляя
на мой URL-адрес холста) работал, как предлагали все остальные. Кажется, что тестовые приложения не равны реальным приложениям.
источник
У меня возникла проблема с моим приложением Rails, которое я обычно запускаю с http: // localhost: 3000, потому что Facebook теперь требует перенаправления Valid OAuth для использования https.
Чтобы использовать https локально, я использовал [ngrok] [1], который позволяет использовать https, предоставляя туннель. Сделать это:
источник
чтобы провести локальное тестирование, все, что вам нужно сделать, это выключить приложение или перевести приложение facebook в режим разработки. Тогда Facebook позволит вам одному получить доступ к приложению.
источник
Для меня это работало так:
Настройка панели управления приложения facebook:
* На вкладке "Основные":
1) Оставить домен приложения пустым.
2) Стирание любой платформы. Значение: нет веб-сайта или холста. (поэтому нет поля URL-адреса сайта для заполнения)
* На вкладке «Дополнительно»:
3) Я ввел действительные URI перенаправления OAuth:
4) относительно моего кода, введите мой c: /xampp/htdocs/localhost/myappfolder/index.php (этот файл делает loginURL):
внутри файла redirect.php:
и я получил сеанс! Ну наконец то! не надо в конце концов вешаться: P
источник