Приложение Facebook Canvas и мобильное приложение Facebook - PullRequest
7 голосов
/ 06 января 2012

Я немного озадачен разницей между приложением facebook canvas и мобильным веб-приложением facebook.Вот контекст моей путаницы ..

У меня есть приложение canvas, давайте назовем его пространство имен myfbapp, и я в основном могу получить к нему доступ из https://apps.facebook.com/myfbapp, и после входа в FB оно открываетсяс в фейсбуке.Я использую java (apache / tomcat) для реализации на стороне сервера, и для простоты скажем, у меня просто есть index.html и authenticationfilter.java (который реализует Filter) в моем веб-приложении.У меня нет какого-либо специфичного для Facebook API Javascript (нет FB.init () javascript или чего-либо подобного) или кода в моем index.html.Всякий раз, когда пользователь обращается к моему приложению Canvas, я сначала получаю запрос к своему веб-приложению, где я получаю подписанный запрос, oauth_token, идентификатор пользователя FB и т. Д., Который я могу использовать для внутренней аутентификации, создания сеанса и т. Д. У меня нет абсолютно никаких проблем с этим приложением Canvas ивсе работает отлично.Обратите внимание, что когда пользователь получает доступ к этому приложению, запрос, который я получаю от браузера на сервер приложений, имеет подписанный запрос, идентификатор пользователя и т. Д.

Теперь я хотел также сделать это приложение доступным на мобильных устройствах, и я подумал: оНу, все, что мне нужно сделать, это добавить мобильный URL-адрес для этого приложения в разделе мобильного веб-приложения на Facebook для того же myfbapp.Я сделал это, и, как и ожидалось, когда я захожу в Facebook с моего телефона Android, myfbapp отображается в разделе приложений, пока все хорошо.Проблема начинается, когда я нажимаю на приложение.Я получаю запрос на моем сервере приложений, но он не содержит подписанный запрос, идентификатор пользователя и т. Д. ?????Я ожидал, что мобильное приложение будет работать так же, как приложение Canvas, но, очевидно, оно не работает, или я что-то не так делаю.

Затем я начал читать больше о мобильном приложении Facebook на http://developers.facebook.com/docs/guides/mobile/web/#register, где говорится о добавлении различных API JavaScript Javascript Facebook в index.html (я никогда не делал ничего подобного в своем приложении Canvas), а затем я начал думать, может тогда мобильное веб-приложение будет больше (или точно) похожим на обычный вебприложение с подключением FB, а не как приложение Canvas (то есть оно не загружается в Facebook), это правда?

Ответы [ 2 ]

12 голосов
/ 06 января 2012

На мобильном фейсбуке вы не видите никаких пользовательских страниц / вкладок. По-видимому, они сейчас работают над этим.

Так что это будет отличаться от приложения холста. Ваше мобильное приложение будет полностью отдельным сайтом и страницей, а не iFrame на Facebook.

1 голос
/ 10 января 2015

Некоторое поведение я обнаружил недавно с помощью вкладок Facebook Canvas / Page на мобильных устройствах. Может быть, это поможет немного лучше понять, как ведет себя Facebook в мобильном контексте.


Мобильный браузер

URL-адрес приложения Access

Пример URL http://apps.facebook.com/myapp/

Перенаправляет на настроенный мобильный веб-сайт под Settings > Website > Mobile Site URL и добавляет дополнительные параметры /?ref=web_canvas&code=<signed_request_code_field>

О поле кода подписанного запроса

Код OAuth, который можно обменять на действительный токен доступа пользователя посредством последующего запроса на стороне сервера

Центр доступа к приложениям

Нет доступа к Центру приложений Facebook через мобильный браузер.

Вкладка «Страница доступа»

Пример URL http://facebook.com/a_facebook_page/custom_page_tab_url

Вкладки пользовательских страниц не видны через мобильный браузер.

Facebook Открыть график поиска

Поиск myapp возвращает ссылку на холст Facebook.

То же поведение, что и Доступ к URL-адресу приложения через мобильный браузер


Мобильный клиент Facebook

URL-адрес приложения Access

Нет прямого доступа к этому URL.

Центр доступа к приложениям

Нет доступа к Центру приложений Facebook.

Вкладка «Страница доступа»

Пример URL http://facebook.com/a_facebook_page/custom_page_tab_url

Вкладки пользовательских страниц не видны через мобильный клиент Facebook.

Facebook Открыть график поиска

Там написано, что это приложение не совместимо с этими устройствами.

Вам необходимо зарегистрировать приложение iOS / Android и отправить пользователя в это приложение, чтобы избавиться от этой ошибки. Возможно, это поможет пользователю, если вы добавите ссылку на автономное приложение в описание приложения на Facebook. Который должен быть там виден.

...