用php开发一个websocketd底层服务

文件路径 /www/websocket/server.php
websocketd 依赖标准输入,输出来实现数据传送。怎么来测试这个底层服务参考之前的文件如何快速建立websocket服务

如果想php作为client端,点击这里
server.php源码

<?php
 
$stdin = fopen('php://stdin', 'r');
 
$arg = trim(fgets($stdin));
echo $arg."<hr/> \n";
 
if($arg=="user"){
	echo "I execute user ";
}
if($arg=="score"){
	echo "I execute score ";
}
 
echo "\n";
 
?>

这个websocketed 采用了标准输出,输入作为接口,所以php实现输入即可实现参数判断了。

./websocketd --port 8080 php /www/websocket/server.php
<html>
 
<script>
 
var ws = new WebSocket("ws://localhost:8080"); 
//申请一个WebSocket对象,参数是服务端地址,同http协议使用http://开头一样,WebSocket协议的url使用ws://开头,另外安全的WebSocket协议使用wss://开头
ws.onopen = function(){
  //当WebSocket创建成功时,触发onopen事件
   console.log("connect WebSocket!");
  ws.send("user"); //将消息发送到服务端
}
ws.onmessage = function(e){
  //当客户端收到服务端发来的消息时,触发onmessage事件,参数e.data包含server传递过来的数据
  console.log("服务端返回数据"+e.data);
}
ws.onclose = function(e){
  //当客户端收到服务端发送的关闭连接请求时,触发onclose事件
  console.log("close");
}
ws.onerror = function(e){
  //如果出现连接、处理、接收、发送数据失败的时候触发onerror事件
  console.log(error);
}
 
</script>
 
</html>

html在浏览器执行效果如图


This entry was posted in PHP, WEB前端 and tagged . Bookmark the permalink.
月小升QQ 2651044202, 技术交流QQ群 178491360
首发地址:月小升博客https://java-er.com/blog/php-websocketd-websoket/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
您的评论是我写作的动力.
2020.03.24 评论已经全局关闭,有事加QQ聊天