#facebook #iframe #facebook-iframe
#Facebook #iframe #facebook-iframe
Вопрос:
Я разрабатываю функциональность пользовательского интерфейса для нашего приложения facebook локально.
Я получаю контент, подобный $ auth_url, а затем добавляю его в исходный код src
iframe. Но это выдает мне несколько ошибок, таких как 500 internal server error
и Permission denied for <http://static.ak.facebook.com> to get property Window.Arbiter
, хотя я вижу facebook.com в iframe. он работает и перезагружается на холст, если я использую top.location.href
вместо этого по той же ссылке.
Я делаю что-то не так? или мне не разрешено делать это локально?
Ответ №1:
Facebook будет сканировать каждый адрес, с которого он получает вызов, и впоследствии отклонит запросы, для которых он не может выполнить этот обход.
Настройте переадресацию портов в вашем маршрутизаторе / модеме и подключите порт 80 к Интернету. Обязательно посмотрите, какой у вас внешний Ip-адрес, и обновите настройки вашего приложения на developers.facebook.com для отражения внешнего адреса и пути.
обязательно прочтите эту статью о локальной разработке приложений facebook
Комментарии:
1. я прочитал эту статью, и в ней говорится, что для создания локальной версии приложения facebook я не могу этого сделать, потому что это приложение компании. устранит ли переадресация порта проблему «отказано в разрешении»?
2. Так и должно быть. Facebook будет отвечать только на запросы с адреса, который он может сканировать, поэтому либо ваша компания должна настроить приложение на сервере разработки, доступном из Интернета, либо вы должны настроить перенаправление портов с вашего компьютера разработки в Интернет.
3. Мне кажется странным требование сделать вызывающее приложение доступным в Интернете и доступным для обхода. Вы знаете, почему Facebook требует этого? Я прочитал ссылку, но она не объясняет, почему.
4. Насколько я понимаю, обоснованное предположение с моей стороны; они хотят с некоторой степенью уверенности убедиться, что вызывающий их api действительно является зарегистрированным приложением. Заставить вызывающую страницу быть доступной, проверяемой и идентичной той, которая зарегистрирована на них, является довольно безопасным способом сделать это.