0

我正在尝试适用于 Unity 的新 Facebook SDK,我想部署此 SDK 中包含的示例,但就像我没有运行任何 Web 服务器一样。我将 Python 软件安装在默认路径 (C:\Python33) 中,并创建了 web.py 文件并将其保存到构建的 Unity 游戏中(web.unity3d 文件在哪里)。更多信息在这里

请参阅我没有可用的 Web 服务器部分。

由于我的英语不太好,我无法理解以下部分:

然后(安装 openssl)[http://www.openssl.org/related/binaries.html] 如果它还没有在您的计算机上。在与上面相同的目录下,生成一个密钥文件:

openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes 为每个提示提供非空白答案(正确性无关紧要,但空值可能)。

启动服务器:

python web.py

为此,有人可以向我解释我将如何做吗?

4

3 回答 3

1

Facebook 提供了有关如何在本地部署简单 Web 服务器的说明,如果您还没有,特别是那个SimpleHTTPServer( http://docs.python.org/2/library/simplehttpserver.html )。先决条件是拥有支持 SSL/TLS 的Web 服务器。所以

第一步:通过使用openssl生成用于服务器的密钥文件来允许 SSL 功能。(保持在同一目录中)

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)

使用之前使用 openssl 生成的服务器密钥文件设置 SSL

最后httpd.serve_forever()执行请求并将服务器部署在https://localhost:44443/

第三步:执行以下命令调用刚刚创建的程序

python web.py

第四步:导航到https://localhost:44443/web.unity3d

于 2013-08-31T17:13:08.360 回答
0

Alejandro - 你实际上并不需要设置本地主机服务器,事实上,我不推荐它,除非你真的想迭代一些 Facebook 回调并且你无法让它们工作。

相反,我会:

  • 进行编辑器内测试只是为了看看事情是如何工作的。编辑器对话框使用虚假数据,但表示游戏体验。
  • 推送到托管站点进行实时测试。例如,使用解析托管并执行“解析部署”来实时推送静态文件。如果你愿意,我可以帮忙。

感谢您查看 SDK!

于 2013-09-03T05:02:11.157 回答
0

您正在安装错误的 python 版本。使用 2.7,而不是 3.3。3.3 没有那个库。

于 2013-09-09T09:34:12.930 回答