Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
web和移动应用程序的node.js服务器_Node.js_Mongodb_Unity3d_Socket.io - Fatal编程技术网

web和移动应用程序的node.js服务器

web和移动应用程序的node.js服务器,node.js,mongodb,unity3d,socket.io,Node.js,Mongodb,Unity3d,Socket.io,我正在创建一个Unity游戏,我想将玩家的分数上传到MongoDB。因此,我构建了一个node.js服务器,监听端口3000,分数将发送到服务器并存储到数据库中 我的问题是,如果我想创建一个网站来查看/分析球员的得分,我应该使用哪种方法 创建两个node.js服务器,一个用于web,一个用于游戏 一个node.js服务器,但监听端口80和3000(我不确定是否可能) 还有其他更好的建议吗 谢谢。使用端口3000不是一个好主意,因为许多用户通过防火墙访问internet,防火墙会阻止非标准端口 我

我正在创建一个Unity游戏,我想将玩家的分数上传到MongoDB。因此,我构建了一个node.js服务器,监听端口3000,分数将发送到服务器并存储到数据库中

我的问题是,如果我想创建一个网站来查看/分析球员的得分,我应该使用哪种方法

  • 创建两个node.js服务器,一个用于web,一个用于游戏
  • 一个node.js服务器,但监听端口80和3000(我不确定是否可能)
  • 还有其他更好的建议吗

  • 谢谢。

    使用端口3000不是一个好主意,因为许多用户通过防火墙访问internet,防火墙会阻止非标准端口

    我建议使用443端口和https来保护这两个用例的通信


    如果用于分析分数的站点不与api服务器共享逻辑,则可以将其创建为单独的站点-但在启动时,更容易管理单个应用程序。

    我将创建一个节点服务器,一个同时服务api和web请求的服务器

    听起来API和web提供的数据是相同的,或者是彼此的子集。因此,您可能希望共享代码,从数据库中查找相同的内容,等等

    从这里,您可以创建api使用和web使用的单独路由(
    /api/v1/my_scores
    vs
    /my_scores
    ),或者意识到您只是要求相同数据的不同表示,并执行RESTful操作,例如发送服务器呈现的HTML或将JSON发送回客户端


    或者,您可以在Node中创建一个api,然后使用Angular或React等纯前端工具为您的站点创建web前端。

    如果我很容易理解您的问题,并且根据我有限的知识,我认为您不需要多台服务器和一个数据库。原因是一个网站你只想显示高分,最终用户也不能在网站上插入任何内容。因此,复杂性已经很低,因此不必费心创建另一台服务器。只需将获取API的数据分开,以便在网站中使用即可