我正在尝试将基于PHP的客户端连接到websocket服务器.

这是我一直在使用的代码,已经在不同的论坛上广泛发布.但由于某种原因,我无法让它发挥作用.

任何帮助,将不胜感激.

$host = 'host'; //where is the websocket server

$port = 443; //ssl

$local = "http://www.example.com/"; //url where this script run

$data = '{"id": 2,"command": "server_info"}'; //data to be send

$head = "GET / HTTP/1.1"."\r\n".

"Upgrade: WebSocket"."\r\n".

"Connection: Upgrade"."\r\n".

"Origin: $local"."\r\n".

"Host: $host"."\r\n".

"Content-Length: ".strlen($data)."\r\n"."\r\n";

WebSocket handshake

$sock = fsockopen($host, $port, $errno, $errstr, 2);

fwrite($sock, $head ) or die('error:'.$errno.':'.$errstr);

$headers = fread($sock, 2000);

fwrite($sock, "\x00$data\xff" ) or die('error:'.$errno.':'.$errstr);

$wsdata = fread($sock, 2000); //receives the data included in the websocket package "\x00DATA\xff"

$retdata = trim($wsdata,"\x00\xff"); //extracts data

WebSocket handshake

fclose($sock);

echo $retdata;

php作为客户端websocket,使用PHP客户端连接到websocket相关推荐

  1. javascript python 通信_Python通过websocket与js客户端通信示例分析

    具体的 websocket 介绍可见 http://zh.wikipedia.org/wiki/WebSocket 这里,介绍如何使用 Python 与前端 js 进行通信. websocket 使用 ...

  2. websocket 更新点位 浏览器卡顿_我们来看看Swoole是如何实现WebSocket服务器及客户端的...

    php自学中心 2019-11-08 10:25:30 文章来自:laravel学院WebSocket 概述 在此之前,有必要对 WebSocket 的原理做简单的说明,WebSocket 复用了 H ...

  3. c++ websocket客户端_python测试开发django81.dwebsocket实现websocket

    前言 HTTP 协议有一个缺陷:通信只能由客户端发起,做不到服务器主动向客户端推送信息. WebSocket 协议它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是 ...

  4. hbuilderx内置服务器启动失败_我们来看看Swoole是如何实现WebSocket服务器及客户端的...

    文章来自:laravel学院 WebSocket 概述 在此之前,有必要对 WebSocket 的原理做简单的说明,WebSocket 复用了 HTTP 协议来实现握手,然后通过请求报文中的 Upgr ...

  5. 解析rosbag数据并使用websocket发送到客户端

    效果: 20220711_170906 服务端: import json,asyncio,websockets,rosbag from sensor_msgs import point_cloud2p ...

  6. WebSocket区分不同客户端方法

    目录 1 获取HttpSession值 2 @PathParam获取用户对象 3 区分不同客户端 1 获取HttpSession值 在使用websocket来制作多人即时聊天工具的时候,难免会遇到一个 ...

  7. qt通过websocket和html通信,QT Websocket实现服务器客户端通讯(服务端部分)

    接上文QT Websocket实现服务器客户端通讯(客户端部分)web https://blog.csdn.net/qq_39573345/article/details/80682232 服务器 S ...

  8. c语言实现stomp协议客户端,在vue中使用SockJS实现webSocket通信

    最近接到一个业务需求,需要做一个聊天信息的实时展示的界面,这就需要和 服务器 端建立webSocket连接,从而实现数据的实时获取和视图的实时刷新.在此将我的实现记录下来,希望可以给有同样需求的人一些 ...

  9. 物联网:SpringBoot 集成Websocket 前后端客户端 及 mqtt 实现设备联动

    项目背景: 实现人离开房间超过一定时间,自动关闭空调联动控制功能. 实现原理: 通过客流密度摄像机监测客流人数变化,发送订阅消息到mqtt 消息服务器,WEB后台服务器订阅mqtt主题,接收客流密度摄 ...

  10. WebSocket服务器和客户端的一对多通知实现

    依次启动Orchestra,websocket server for KOI app和WebSocket server for Webshop,也就是总共启动三台服务器. 启动本地的web Shop模 ...

最新文章

  1. AdaBoostClassifer详解及实战
  2. 7.测试hadoop安装成功与否,并跑mapreduce实例
  3. JS中的call()方法和apply()方法和slice()用法总结
  4. MongoDB 5.0 来了,原生时序、版本化 API 新特性悉数登场
  5. 显示菜单栏_mac菜单栏不显示了,如何设置?
  6. docker daemon配置阿里云加速器
  7. jar包和war包的区别
  8. Pycharm_EmmyLua断点调试Lua
  9. java 堆栈大小设置_如何增加Java堆栈大小?
  10. sqlite内存模式
  11. 公司电脑加域之后用不了USB但是可以用鼠标键盘得解决方法
  12. 解决【无法对套接字执行操作,因为系统缺少足够的缓冲区空间,或者因为系统上的队列已满127.0.0.1:8086】问题
  13. java抽象类与final关键字的用法
  14. texstudio使用
  15. 一个程序员的丰功伟绩
  16. Jessi-记录工作问题
  17. 中鑫吉鼎|你知道自己理财期间这四个更重要吗
  18. 计算机网络名词解释www万维网,网络名词解释
  19. 半导体衰落超出想象,会熊市反弹? – 25 年来 71 家公司的库存分析
  20. 两个运放制作加法器_运放基础第10讲,加法器、减法器、积分器、微分器、仪表放大器...

热门文章

  1. bouncycastle
  2. 使用Dreamweaver进行一个简单的图文混排1/HTML
  3. 专访递归神经网络之父:AI下一轮革命核心是“人工好奇心”
  4. golang的dep和vender
  5. USB之:MTKUSB软件框架及其MassStorage Class规范学习
  6. 外贸邮箱能群发吗?用哪个外贸邮箱发开发信回复率高?
  7. Bagging 和 Boosting理解、区别与联系
  8. UOS系统(ubuntu)安装开发环境
  9. hdu 6438 - 贪心
  10. android 六边形简书,水波浪贝塞尔效果(六边形)