通过js 用websocket 连接打印机 进行打印问题

通过js 用websocket 连接打印机 进行打印,已知打印机的端口是默认开的,通过PHP代码

$s = fsockopen("192.168.1.122", 8081,$errno, $errstr, 30);
 fwrite($s,"abcjiuejseeeeeeeee2222222222ss");

这样打印是可以的,但通过JS的websocket连接就只打印头信息,是什么情况?

js 代码是:

ws = new WebSocket("ws://192.168.1.122:8081/");
console.log(ws);
ws.onopen = function (e) {
    console.log(e);
    console.log("连接成功");
    ws.send('2222222222222222222222222222');
};
ws.onclose = function(e) {
    console.log("连接关闭");
};
ws.onerror = function(e) {
    console.log("出现错误");
};

js 这边是进不去 ws.open

阅读 10k
3 个回答
$s = fsockopen("192.168.1.122", 8081,$errno, $errstr, 30);
ws = new WebSocket("ws://192.168.10.120:8081/");

大兄弟,你发现了什么微妙的差异了么?
192.168.1.122
192.168.10.120

Websocket是基于需要进行握手验证的,你可以看一看Tcp协议的三次摸手和websocket和PHP的socket的通信

最后发现,这个打印机实现的是socket,没有集成websocket,对方说这个主板是换过的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题