簡體   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