О начале работы с Facebook SDK для Unity

Я пробую новый Facebook SDK для Unity, и я хотел бы развернуть пример, включенный в этот SDK, но, как будто я не использую какой-либо веб-сервер. Я установил программное обеспечение Python по пути по умолчанию (C:\Python33), создал файл web.py и сохранил его во встроенной игре Unity (где находится файл web.unity3d). Подробнее здесь.

Смотрите, у меня нет доступной части веб-сервера.

Поскольку мой английский не так хорош, я не мог понять следующую часть:

Затем (установите openssl)[http://www.openssl.org/related/binaries.html], если его еще нет на вашем компьютере. В том же каталоге, что и выше, создайте файл ключа:

openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes Укажите непустой ответ на каждое приглашение (правильность не имеет значения, но могут быть пустые значения).

Запустите сервер:

питон web.py

Для этого, может ли кто-нибудь объяснить мне, как я должен это сделать?


person Alejandro Castan    schedule 31.08.2013    source источник


Ответы (3)


Facebook предоставляет инструкции о том, как развернуть простой веб-сервер локально, если у вас его еще нет, особенно SimpleHTTPServer (http://docs.python.org/2/library/simplehttpserver.html). Необходимым условием является наличие поддерживающего SSL/TLS веб-сервера. Так

Первый шаг. Разрешите поддержку SSL, используя openssl для создания файла ключа для использования на сервере. (Храните его в том же каталоге)

openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -node

После выполнения этой команды будет запрошен ряд подсказок, но для целей руководства не важно, какие значения, если они не пустые.

Второй шаг. Создайте файл web.py со следующим содержимым.

import BaseHTTPServer, SimpleHTTPServer
import ssl
httpd = BaseHTTPServer.HTTPServer(('localhost', 4443), SimpleHTTPServer.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket (httpd.socket, certfile='server.pem', server_side=True)
httpd.serve_forever()

Эта линия

httpd = BaseHTTPServer.HTTPServer(('localhost', 4443), SimpleHTTPServer.SimpleHTTPRequestHandler),

так сервер будет представлен в браузере, https://localhost:44443/, где игровой объект будет находиться в https://localhost:44443/web.unity3d

Эта линия

httpd.socket = ssl.wrap_socket (httpd.socket, certfile='server.pem', server_side=True)

устанавливает SSL с файлом ключа сервера, созданным ранее с помощью openssl

Наконец, httpd.serve_forever() выполняет запросы и развертывает сервер в https://localhost:44443/.

Третий шаг: вызовите только что созданную программу, выполнив следующую команду

python web.py

Четвертый шаг: перейдите к https://localhost:44443/web.unity3d

person phwd    schedule 31.08.2013
comment
Привет phwd, Спасибо за вашу помощь. Я попробую ! - person Alejandro Castan; 01.09.2013
comment
Извините за невежество, но я новичок в этой теме. Где я должен выполнить код -openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -node. В смд? - person Alejandro Castan; 01.09.2013
comment
Я загрузил openssl и выполнил его исполняемый файл, и я добавил команду: openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -node, и я получил ошибку openssl - недопустимая команда - person Alejandro Castan; 01.09.2013
comment
Если вы получаете сообщение об ошибке, говорящее, что openssl является недопустимой командой, вам необходимо убедиться, что openssl правильно установлен для вашей ОС Windows. - person phwd; 02.09.2013
comment
Привет, phwd, извините, но я не могу понять следующее: Первый шаг: сгенерировать файл ключа для использования на сервере. (Держите его в том же каталоге) для него, какой это каталог? С другой стороны, я установил Openssl в C: Python, запустил openssl.exe и выполнил код openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -node, но я понял, что openssl неверный код и выполнил тот же код без мира openssl и кажется, что он сгенерировал файл ключа, но я не знаю, где его сохранить? Не могли бы вы научить меня шаг за шагом, как это сделать? Спасибо за ваше время - person Alejandro Castan; 04.09.2013
comment
они также получили неправильный переход к строке. Facebook API пронизан ошибками и проблемами, я бы рекомендовал держаться подальше от него пару месяцев, пока они не разберутся со всеми проблемами. запускайте SSL на порту 4443, а не 44443, как написано на их странице. Также устанавливайте python 2.7, а не 3.3, они не уточнили. Я думаю, что постер на этой странице в Facebook просто скопировал несколько случайных инструкций из Интернета по установке клиента ssl на локальном хосте, не зная, как это сделать, поэтому все проблемы у вас и у всех, кто попытается это сделать. - person Ricky; 09.09.2013

Алехандро - на самом деле вам не нужно настраивать локальный сервер, на самом деле, я не рекомендую его, если вы действительно не хотите повторять некоторые обратные вызовы Facebook, и у вас возникли проблемы с их работой.

Вместо этого я бы:

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

Спасибо за проверку SDK!

person aaron    schedule 03.09.2013
comment
Я также поставил задачу убрать эти предложения из документов. это не страшно, но я думаю, что это только добавляет ненужной путаницы. - person aaron; 03.09.2013
comment
Привет Аарон, Во-первых, спасибо за вашу помощь. Извините, но у меня плохой английский, из-за этого не могли бы вы пошагово объяснить мне, как я должен выполнять два специализации, которые вы мне сказали? Благодаря понимаю. - person Alejandro Castan; 04.09.2013
comment
Привет, Алехандро: - для тестирования в редакторе я бы просто нажал кнопку «воспроизведение» в верхней части единства, а затем убедился, что ваше приложение работает правильно и что у вас нет сбоев при вызове SDK Facebook (т. FB.Init, FB.Login, FB.AppRequest и FB.Feed должны вызываться без сбоев. Хотя они не будут работать) - Для живого тестирования я бы следовал инструкциям здесь: parse.com/docs/cloud_code_guide : напишите мне на Facebook, если вам нужна помощь, я буду рад провести вас через процесс - person aaron; 05.09.2013

вы устанавливаете неправильную версию Python. Используйте 2.7, а не 3.3. В 3.3 нет этой библиотеки.

person Ricky    schedule 09.09.2013