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
相关推荐
00后程序员张8 分钟前
免Mac上架实战:全平台iOS App上架流程的工具协作经验
websocket·网络协议·tcp/ip·http·网络安全·https·udp
某公司摸鱼前端13 小时前
uniapp socket 封装 (可拿去直接用)
前端·javascript·websocket·uni-app
2501_9159214315 小时前
iOS IPA 混淆实测分析:从逆向视角验证加固效果与防护流程
websocket·网络协议·tcp/ip·http·网络安全·https·udp
2501_9159184115 小时前
打造可观测的 iOS CICD 流程:调试、追踪与质量保障全记录
websocket·网络协议·tcp/ip·http·网络安全·https·udp
漫谈网络16 小时前
WebSocket 在前后端的完整使用流程
javascript·python·websocket
2501_9159090619 小时前
调试 WebView 旧资源缓存问题:一次从偶发到复现的实战经历
websocket·网络协议·tcp/ip·http·网络安全·https·udp
向明天乄19 小时前
在小程序中实现实时聊天:WebSocket最佳实践
websocket·网络协议·小程序
漫谈网络20 小时前
WebSocket扫盲
网络·websocket·网络协议
2501_9159214321 小时前
请求未达服务端?iOS端HTTPS链路异常的多工具抓包排查记录
websocket·网络协议·tcp/ip·http·网络安全·https·udp
数通Dinner1 天前
异步Websocket构建聊天室
运维·网络·websocket·网络协议·信息与通信