javascript - 我如何创建自己的 url,如 ws ://echo. websocket.org?

标签 javascript node.js websocket echo real-time

我是计算机科学的新手。我正在学习 nodejs。我看到很多开发人员使用这样的 url 的例子

ws://echo.websocket.org
ws://localhost:8080/echo
ws://sandbox.kaazing.net/echo

这是什么意思?当我们可以制作聊天应用程序或任何实时应用程序时,为什么我们需要这个? 我怎样才能创建自己的? 我试图创建自己的,但我不知道我必须写什么。我只是写这段代码而已

var ws=require('ws');
var http=require('http');
http.createServer(function(req, res){

// here i dont know what i write
}).listen(8080);

我试图弄清楚如何创建/构建像那些那样的 url...但我找不到任何好的教程。

................................................

<!DOCTYPE html>
<meta charset="utf-8" />
<title>WebSocket Test</title>
<script language="javascript" type="text/javascript">
    var wsUri = "ws://echo.websocket.org/";
    var output;

    function init() {
        output = document.getElementById("output");
        testWebSocket();
    }

    function testWebSocket() {
        websocket = new WebSocket(wsUri);
        websocket.onopen = function(evt) {
            onOpen(evt)
        };
        websocket.onclose = function(evt) {
            onClose(evt)
        };
        websocket.onmessage = function(evt) {
            onMessage(evt)
        };
        websocket.onerror = function(evt) {
            onError(evt)
        };
    }

    function onOpen(evt) {
        writeToScreen("CONNECTED");
        doSend("WebSocket rocks");
    }

    function onClose(evt) {
        writeToScreen("DISCONNECTED");
    }

    function onMessage(evt) {
        writeToScreen('<span style="color: blue;">RESPONSE: ' + evt.data + '</span>');
        websocket.close();
    }

    function onError(evt) {
        writeToScreen('<span style="color: red;">ERROR:</span> ' + evt.data);
    }

    function doSend(message) {
        writeToScreen("SENT: " + message);
        websocket.send(message);
    }

    function writeToScreen(message) {
        var pre = document.createElement("p");
        pre.style.wordWrap = "break-word";
        pre.innerHTML = message;
        output.appendChild(pre);
    }
    window.addEventListener("load", init, false);
</script>
<h2>WebSocket Test</h2>
<div id="output"></div>

我从 https://www.websocket.org/echo.html 中截取了这段代码.

最佳答案

您指的是协议(protocol)处理程序。

ws 是 websocket 协议(protocol) (wikipedia) .为了创建自定义协议(protocol),用户必须在其客户端上安装应用程序。在 Windows 中,这些保存在注册表中。参见 ShotgunSoftware Article .

在用 NodeJS 创建的服务器应用程序上定义协议(protocol)是不可行的。您最多只能在服务器上定义它。

我希望这能消除任何困惑,如果我能提供澄清,请告诉我。

关于javascript - 我如何创建自己的 url,如 ws ://echo. websocket.org?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32402757/

相关文章:

Eclipse 和企业 Web 应用程序之间的 Java 聊天(消息传递)

c# - 带有 Javascript 客户端的 WCF 自托管 WebSocket 服务

javascript - dc.js 时间格式错误

javascript - jQuery 轮播/画廊无法正常工作

node.js - 如何查询MongoDb中的所有项目

node.js - 如何在socket io中获取ip

ruby-on-rails - 升级到 WebSocket 失败与未经授权的连接尝试被拒绝

javascript - Javascript 中的多行(HTML 和 JSP)

javascript - 我需要过滤 bootstrap jQuery 数据表

sql - 通过模型关联对nodejs进行序列化