The Web Games on Facebook and Facebook Gameroom platforms are no longer available for new submissions. This documentation is intended solely for developers with existing games. To learn more, read our blog post.
Игры на Facebook размещаются как на портале, а сами материалы игры хранятся на вашем веб-сервере. Чтобы разместить игру на Facebook.com, нужно настроить URL веб-игр на Facebook, и она появится в iframe. Используйте Центр приложений Facebook и следуйте нашим рекомендациям, чтобы заинтересовать людей своими материалами, а социальные функции платформы Facebook помогут игрокам общаться между собой.
В настройках вашего приложения есть поле для URL веб-игр на Facebook. В этом поле можно настроить форму iframe, которая загружается при запуске вашей игры. Это позволяет вам полностью управлять своей игрой, обновлять версии и менять контент по своему усмотрению. Просмотреть настройки своего приложения вы можете здесь.
Когда кто-то на Facebook.com загружает вашу игру, Facebook выполняет запрос HTTP POST
на URL веб-игр на Facebook, указанный в настройках приложения. В ответ на этот запрос вы должны получить код HTML, содержащий клиент вашей игры. Чтобы авторизовать пользователей, взаимодействовать с формой и работать с диалоговыми окнами игры, можно использовать Facebook SDK для JavaScript, поэтому обязательно добавьте все необходимые параметры в код HTML своей игры. Дополнительную информацию о Входе для игр на Facebook см. здесь.
HTTP-запрос POST, отправленный на ваш URL веб-игр на Facebook, будет содержать дополнительные параметры, в том числе параметр signed_request
с идентификационными данными игрока на Facebook, если он предоставил вашему приложению базовые разрешения. Если игрок новый, то значение параметра signed_request
поможет подтвердить, что этот запрос действительно поступил из Facebook. Дополнительную информацию о подписанных запросах см. в руководстве Вход для игр на Facebook.
Для перехода по Facebook.com необходим протокол HTTPS, и это же требование действует для контента игры. Следовательно, чтобы представить контент игры, необходим действительный сертификат SSL. При настройке веб-сервера, на котором будет размещена ваша игра, убедитесь, что он принадлежит вашему домену и что у вас есть действительный сертификат SSL для этого домена.
В запрос на запуск игры можно передать индивидуально настроенные параметры. Это позволит отслеживать эффективность новостей Open Graph, сайтов переадресации или опубликованных ссылок.
Эту задачу можно выполнить двумя способами:
URL вашей игры на Facebook всегда будет выглядеть так: https://apps.facebook.com/{namespace}/ . Сюда можно добавить параметры запроса при размещении рекламной ссылки со Страницы приложения или из других источников в Интернете. Пример:
https://apps.facebook.com/{namespace}/?source=mysourceid
Эти параметры запроса сохранятся при запуске игры и будут отправлены на ваш сервер вместе с signed_request.
Также можно разместить ссылки, которые переадресовывают игроков на определенные разделы в вашей игре. Если вы используете PHP или скрипты запуска, то эти ссылки помогут направить игроков на участки игры за пределами стандартных процессов. Полный путь сохранится в запросе на ваш сервер. Предположим, что вы разместили следующую ссылку:
https://apps.facebook.com/{namespace}/special_launch.php
Тогда Facebook выполнит запрос
https://{your_web_games_url}/special_launch.php
при загрузке формы iframe для вашей игры.
При запуске игры на Facebook в HTTP-запрос на ваш сервер будет добавлен параметр запроса signed_request
. Параметр signed_request
можно декодировать, чтобы получить данные о пользователе и подпись для обеспечения безопасности и проверки подлинности этих данных. Проанализировать этот параметр можно следующим образом:
238fsdfsd.oijdoifjsidf899
)Если поля user_id
нет, это означает, что игрок пока не предоставил вашей игре разрешения public_profile.
Если после анализа signed_request
вы узнаете, что игрок новый и еще не предоставил вашей игре базовые разрешения, то можете запросить их с помощью SDK для Javascript.
FB.login(function(response){ // Handle the response });
Если нужно запросить и другие разрешения, например email
, добавьте их в виде второго параметра.
FB.login(function(response) { // Handle the response }, {scope: 'email'});
Эти данные также содержат другую важную информацию: настройки возраста и языковые предпочтения игрока. Дополнительную информацию см. в разделе Вход для игр на Facebook.
В процессе разработки своей игры вы, вероятно, захотите разместить ее на веб-сервере, который работает на вашем локальном компьютере, чтобы быстрее выполнить все необходимые этапы редактирования, компиляции и тестирования. Как правило, с этой целью разработчики используют серверную среду, например XAMPP. Также вам понадобится создать и установить локальный сертификат SSL, чтобы этот сервер поддерживал HTTPS.
Когда вы будете готовы представить свою игру, вам нужно будет разместить ее на общедоступном веб-сервере.
Когда трафик вашей игры увеличится, попробуйте использовать сеть доставки контента (CDN), например Akamai или CDNetworks, чтобы сократить затраты на хостинг и повысить производительность. Сеть CDN кэширует контент вашей игры в различных местах в Интернете. Это означает, что игровой контент будет предоставляться пользователям из близлежащих серверов. Игра будет загружаться быстрее, а ваш сервер не будет перегружен трафиком.