【问题标题】:About Getting Started with the Facebook SDK for Unity关于 Facebook SDK for Unity 入门
【发布时间】:2023-03-10 18:41:01
【问题描述】:

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

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

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

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

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

启动服务器:

python web.py

为此,有人可以向我解释我该怎么做吗?

【问题讨论】:

    标签: facebook unity3d facebook-unity-sdk


    【解决方案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

    【讨论】:

    • 您好 phwd,感谢您的帮助。我会试试的!
    • 抱歉我的无知,但我是这个话题的新手。我必须执行代码 -openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -node。在cmd中?
    • 我下载了 openssl 并执行了它的 exe 文件并添加了命令:openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -node 我得到错误 openssl is无效的命令
    • 如果您收到错误提示 openssl 是无效命令,那么您需要确保为您的 Windows 操作系统正确安装了 openssl
    • 他们也得到了导航到错误的行。 facebook api 充满了错误和问题,我建议远离它几个月,直到他们解决所有问题。在端口 4443 上运行 SSL,而不是他们在页面上说的 44443。同样,安装 python 2.7,而不是 3.3,他们没有澄清。我认为那个 facebook 页面上的海报只是从互联网上复制了一些随机指令,以便在 localhost 上安装一个 ssl 客户端,而实际上并不知道如何去做,因此你和任何尝试它的人都会遇到的所有问题。
    【解决方案2】:

    Alejandro - 您实际上并不需要设置 localhost 服务器,事实上,我不建议您这样做,除非您真的想迭代一些 Facebook 回调并且您无法让它们正常工作。

    相反,我会:

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

    感谢您查看 SDK!

    【讨论】:

    • 我还做了一项任务,将这些建议从文档中删除。这不是一件可怕的事情,但我认为它只会增加不必要的混乱。
    • 嗨亚伦,首先,感谢您的帮助。对不起,但我的英语很少,对于它,你能逐步解释一下我必须如何做你告诉我的两个宠物吗?感谢了解。
    • 嗨亚历杭德罗: - 对于编辑器内测试,我只需点击 unity 顶部的“播放”按钮,然后确保您的应用程序正常运行并且您不会在以下情况下崩溃您调用 Facebook SDK(即 FB.Init、FB.Login、FB.AppRequest 和 FB.Feed 都应该可以调用而不会崩溃。但它们不起作用) - 对于实时测试,我将按照此处的说明进行操作: parse.com/docs/cloud_code_guide :如果您需要帮助,请在 Facebook 上给我发消息,我很乐意引导您完成整个过程
    【解决方案3】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多