使用websocketd做websocket服务器,网页中接收数据

WebSocket和websocketd的介绍  ----->https://www.jianshu.com/p/63afd0099565

其中在websocketd中后台脚本是不限制语言的,在我的测试当中,脚本是用python编写的,就写了简单的输出,因为标准输入(stdin)就是 WebSocket 的输入,标准输出(stdout)就是 WebSocket 的输出。

python脚本

我在服务器的根目录中新建了python脚本

import time

print(1)
time.sleep(1)
print(2)
time.sleep(1)
print(3)
time.sleep(1)

print("hello world")

测试的js

<!DOCTYPE html>
<html>
<head>
	<title>test</title>
	<script type="text/javascript">
		
		function getmsg(){
			var ws = new WebSocket('ws://localhost:8080/');
			console.log("连接成功")
			console.log(ws);

			console.log("++++++++++");
			ws.onmessage = function(event) {
			  console.log(event.data);
			};

		 	ws.onclose = function()
            {
                // 关闭 websocket
                console.log("连接已关闭...");
            };
		}
	</script>
</head>
<body>
<button value="test" onclick="getmsg()">test</button>
<div id="msg">
	
</div>
</body>
</html>

运行方法:

服务器的运行直接到服务器的根目录运行命令即可,我写的脚本的名字叫cout.py,其中命令中指明了端口号

websocketd --port=8080 python cout.py

 看到下图中的输出就说明服务器已经打开了

在浏览器中打开写好的网页,打开控制台就可以看到网页接收到的来自服务器的输出信息。

 同时在终端中也可以看到相应的提示信息

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
WebSocketd是一个用于将任何命令行程序转换为WebSocket服务器的工具。它允许您通过WebSocket协议与命令行程序进行双向通信。您可以使用WebSocketd来创建实时的Web应用程序,将命令行程序的输出发送到Web浏览器,或者将Web浏览器的输入发送到命令行程序。 您可以通过以下步骤来使用WebSocketd: 1. 下载和安装WebSocketd:您可以从官方网站http://websocketd.com/ 或者GitHub仓库https://github.com/joewalnes/websocketd/ 下载WebSocketd的最新版本,并按照官方文档进行安装。 2. 创建一个命令行程序:您可以使用任何编程语言编写一个命令行程序,该程序将作为WebSocket服务器的后端。该程序可以接收来自WebSocket客户端的消息,并将结果发送回客户端。 3. 启动WebSocketd服务器:在命令行运行WebSocketd,并指定要运行的命令行程序。例如,如果您的命令行程序是一个Python脚本,可以使用以下命令启动WebSocketd服务器: ```shell websocketd --port=8080 python my_script.py ``` 这将在8080端口上启动WebSocketd服务器,并将请求转发给my_script.py脚本。 4. 连接到WebSocket服务器使用WebSocket客户端(例如Web浏览器)连接到WebSocketd服务器。您可以使用JavaScript代码或其他WebSocket客户端库来实现连接和通信。 5. 进行双向通信:一旦连接建立,您可以通过WebSocket发送消息到命令行程序,并接收来自命令行程序的输出。您可以使用WebSocketd提供的API来处理消息和事件。 请注意,WebSocketd是一个强大的工具,可以用于各种用途,包括实时数据传输、远程控制和监控等。您可以根据自己的需求和具体情况来使用WebSocketd。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值