websocketd 10秒教程

websocketd

参考地址:joewalnes/websocketd

官网地址:websocketd

websocketd简述

websocketd是一个简单的websocket服务Server,运行在命令行方式下,可以通过websocketd和已经有程序进行交互。

现在,可以非常容易地构建支持 WebSocket 的应用程序。只要你能写一个可读写STDINSTDOUT的可执行程序,你就可以构建一个WebSocket服务器。在Python,Ruby,Perl,Bash,.NET,C,Go,PHP,Java,Clojure,Scala,Groovy,Expect,Awk,VBScript,Haskell,Lua,R等等中做到这一点!无需网络库。

websocketd 10秒教程

1.下载并安装websocketd

  1. 下载地址:linux、windows等
  2. 将文件提取到您选择的文件夹或仅提取可执行文件
  3. 将websocketd的位置添加到PATH变量中

RUN

复制代码
websocketd --help

2.写一个程序把数据显示到STDOUT

你可以用任何语言。

例子用了最简单的sh。

count.sh:

bash 复制代码
#!/bin/bash
# Count from 1 to 10, pausing for a second between each iteration.
for COUNT in $(seq 1 10); do
    echo $COUNT
    sleep 1
done

记得让他变成可执行文件:

ruby 复制代码
$ chmod +x ./count.sh

3.启动websocketd server

ruby 复制代码
$ websocketd --port=8080 ./count.sh

4.用javascript写一个客户端来交互

count.html:

xml 复制代码
<!DOCTYPE html>
<pre id="log"></pre>
<script>
  // helper function: log message to screen
  function log(msg) {
    document.getElementById('log').textContent += msg + '\n';
  }
  // setup websocket with callbacks
  var ws = new WebSocket('ws://localhost:8080/');
  ws.onopen = function() {
    log('CONNECT');
  };
  ws.onclose = function() {
    log('DISCONNECT');
  };
  ws.onmessage = function(event) {
    log('MESSAGE: ' + event.data);
  };
</script>

很简答,建立连接,然后接收消息,当然你也可以发送消息。

在 Web 浏览器中打开此页面。

5.websocket的常用API

perl 复制代码
onopen
onerror
onclose
onmessage
send
相关推荐
hrw_embedded20 小时前
国外新能源充电平台调试OCPP调试平台SteVe和Monta其实是互补的-websoket连接部分。
websocket·ocpp·新能源充电平台·steve·monta
xcLeigh1 天前
鸿蒙平台 KeePass 密码管理器适配实战:从 Windows 到 鸿蒙PC 的 Electron 迁移指南
windows·electron·web·harmonyos·加密算法·keepass
JouYY1 天前
如何实现基于 WebSocket Agent 的断线重连与状态恢复
websocket·llm·agent
一拳一个娘娘腔1 天前
【第五期】漏洞攻防-逻辑篇:越权与支付漏洞 —— 为什么改个参数就能“0元购”?
安全·web安全·web
持敬chijing1 天前
Web渗透之前后端漏洞-文件下载漏洞
sql·web安全·网络安全·网络攻击模型·web
BlockWay1 天前
WEEX WebSocket 与 API 生态,正在解决什么问题?
网络·websocket·网络协议
俊俊谢1 天前
【python】FastAPI 实时推送:从 SSE 到 WebSocket
python·websocket·fastapi
TickDB1 天前
统一行情 API 查 A 股、港股、美股和数字货币:code=0 不代表 symbol 一个没少
人工智能·python·websocket·mcp·行情数据 api
晓杰'2 天前
从0到1实现Balatro游戏后端(8):Skip Blind与Tag奖励机制设计与实现
后端·websocket·typescript·项目实战·nestjs·状态管理·游戏服务器
CryptoPP2 天前
多市场行情 API 接入实战:一套接口打通股票/外汇/期货/加密货币 + WebSocket 实时推送
大数据·网络·人工智能·websocket·网络协议·金融·区块链