websocketd
参考地址:joewalnes/websocketd
官网地址:websocketd
websocketd简述
websocketd是一个简单的websocket服务Server,运行在命令行方式下,可以通过websocketd和已经有程序进行交互。
现在,可以非常容易地构建支持 WebSocket 的应用程序。只要你能写一个可读写STDIN
和STDOUT
的可执行程序,你就可以构建一个WebSocket服务器。在Python,Ruby,Perl,Bash,.NET,C,Go,PHP,Java,Clojure,Scala,Groovy,Expect,Awk,VBScript,Haskell,Lua,R等等中做到这一点!无需网络库。
websocketd 10秒教程
1.下载并安装websocketd
- 下载地址:linux、windows等
- 将文件提取到您选择的文件夹或仅提取可执行文件
- 将websocketd的位置添加到PATH变量中
RUN
websocketd --help
2.写一个程序把数据显示到STDOUT
你可以用任何语言。
例子用了最简单的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