繁体   English   中英

带有Web套接字的REST API中心应用程序,是否使用node.js?

[英]REST API-Centric application, with web sockets, using node.js?

我从未做过任何API,最近才意识到REST,从未使用过套接字或node.js,但是我想到了使用所有这些的简单项目。

想象一下带有请求/响应内容的常规应用程序。 没有什么花哨。 但是有时候我需要实时功能,可以说有对网站的实时支持,聊天。 因此,大多数用户永远不需要套接字,并且一切都很容易,但是当他们这样做时,那又是什么呢? 静态api的外观和工作方式如何?

在标记时, socket.io非常适合您。 它使用Websockets和longpolling在浏览器中为您的服务器创建一个套接字,而无需用户安装任何第三方程序。 对于使用旧浏览器但没有内置浏览器功能的用户,它可以使用第三方插件Flash Player,但几乎所有浏览器都已安装了该插件。

是您习惯了Javascript还是面向对象的编程, socket.ionode.js都是在公园里散步。 如果您不想使用node.jssocket.io ,则可以使用以下信息编写自己的client-server实现:

Web套接字
长轮询示例
Flash AS3插槽

作为一个小建议,您只需要在默认端口80上运行默认Web服务器(Apache,Nginx,Lighthttpd等),并在其他端口(例如8080)上运行node.js服务器。第二台服务器即可使用连接所需的所有文件,因为socket.io只能连接到为文件提供服务的相同域和端口(我猜是出于安全原因)。

简而言之,您将拥有两台服务器:一台为整个网页提供服务,另一台为连接到聊天所需的文件(显然也为聊天提供服务)。

我已经在我的一个页面(一个体育直播网站)中进行了正确的配置,并将聊天添加到我的站点中,我的服务器运行在端口8080中,并将其加载到iframe的主页中: http:// www.example.com:8080/

另外,您可以在node.js中创建一个完整的http服务器,但是我认为它作为专业的Web服务器并不有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM