Почему нам нужно создать файл channel.html на нашем сервере, чтобы использовать Facebook JS SDK? - PullRequest
13 голосов
/ 13 августа 2011

Я действительно не понимаю, зачем нам создавать файл channel.html, как указано FB docs . Я также хочу понять, как это используется. В моих журналах я не вижу, чтобы этот файл когда-либо запрашивался.

Ответы [ 2 ]

13 голосов
/ 23 февраля 2012

Файл канала предназначен для обеспечения междоменной связи между серверами FB и вашими. Причиной этого является их жесткий контроль над токенами доступа. Вы должны аутентифицировать URL перенаправления и идентификатор приложения, чтобы получить этот токен доступа. Чтобы передать вам токен, они ударили по вашему URL токеном доступа в хэше. С помощью URL канала они могут передать этот токен себе (их JavaScript работает на вашем домене).

Этот файл канала может затем передать токен доступа на вашу активную страницу.

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

3 голосов
/ 18 августа 2011

Надеюсь, это поможет.

https://developers.facebook.com/docs/reference/javascript/FB.init/

Из документа:

Это опция, которая может помочь решить три конкретные известные проблемы. Во-первых, когда задействовано автоматическое воспроизведение аудио / видео, пользователь может услышать два потока аудио, потому что страница была загружена второй раз в фоновом режиме для междоменной связи. Во-вторых, если у вас есть код перебора кадров, вы увидите пустую страницу. В-третьих, это предотвратит включение дополнительных попаданий в ваши журналы на стороне сервера. В этих сценариях вы можете указать необязательный параметр channelUrl:

...