Локальная разработка Facebook

#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 действительно является зарегистрированным приложением. Заставить вызывающую страницу быть доступной, проверяемой и идентичной той, которая зарегистрирована на них, является довольно безопасным способом сделать это.