C-Lodop 提示未准备好或 WebSocket 没准备好:先让本机服务起来

现场最常见的弹窗之一:C-Lodop 未准备好、WebSocket 没准备好。点打印没纸,控制台一串本地连接失败。

这不一定是 Lodop 本身坏了。老项目里 C-Lodop 当本机打印服务用得很广,页面要连上它才能出纸。连不上时,先别改单据坐标。

按这个顺序查

1. 托盘在不在

任务栏右下角服务图标没有,页面怎么 getLodop 都是空的。让操作员点开安装目录里的服务,或从开始菜单启动一次。重启电脑后没自启,第二天全店一起报这个错。

2. 进程在不在

任务管理器里看服务进程。被安全软件隔离、被远程桌面会话带挂,都会变成「未准备好」。

3. 端口有没有人抢

本机同时装了好几个打印服务时,默认端口容易撞。浏览器开发者工具看本地 WebSocket / HTTP 是失败还是超时。失败就去服务设置里核对端口,和页面脚本里写的是否一致。

4. 页面协议对不对

业务站是 HTTPS,本机服务还按 HTTP 提供,浏览器会拦混合内容。同事点掉一次提示,后面就像「没反应」。无痕窗口能复现的话,先处理证书或本机 HTTPS,再查业务代码。

5. 脚本是不是在服务起来之前就调了

Vue 路由一进来就打印,服务还在启动,第一次必失败。按钮点击时再取实例,比 onMounted 里抢跑稳。

以上都通了,Lodop 老单据可以继续打。这套服务能跑的工位,不要为了排障把现场拆掉。

新模块可以并行,不必停掉 C-Lodop

有的票已经是 Vue 拼出来的 HTML,不想再往全局脚本里塞一截。可以另开一条:工位再装一套 npm 客户端,页面用 web-print-pdf 打新票。

bash 复制代码
npm install web-print-pdf
js 复制代码
import webPrintPdf from 'web-print-pdf'

await webPrintPdf.printHtml(
  html,
  { paperFormat: 'A4', printBackground: true },
  { printerName: '从本机列表抄的名字' },
  { action: 'print' }
)

老套打仍走原来的 C-Lodop。字典里加个打印引擎字段,比「全场二选一」好讲话。

包名搜 web-print-pdf。本文不放链接。

相关推荐
এ慕ོ冬℘゜16 分钟前
ES Promise.all/ Promise.race
前端·javascript·elasticsearch
王夏奇26 分钟前
AI工具学习
网络·学习
BioRunYiXue37 分钟前
使用docker分析高通量测序数据
java·数据库·人工智能·spring cloud·docker·tomcat·html
卓豪终端管理1 小时前
300 台终端补丁推送完成 ≠ 漏洞关闭:补丁稽核闭环的状态机与工程落点
网络·数据库·php
2501_915106321 小时前
跨平台抓包工具怎么选?TraceEagle抓包鹰 的四种跨平台能力
网络协议·计算机网络·网络安全·ios·adb·https·udp
比兔代理1 小时前
家宽 IP 的运营商池特征、IP 标签与风控特点分析
网络
聚美智数1 小时前
文档转换 API‑文档转 PDF‑PDF 转文档‑异步文档处理‑文件格式迁移‑转换结果回调推送 API 接口介绍
android·java·pdf
只睡四小时1 小时前
端侧推理:face-api.js 首屏 92% 是白下载的
开发语言·javascript·人脸识别·ecmascript·tensorflow.js·face-api.js·端侧推理
大文说跨境1 小时前
亚马逊多店铺用过多款指纹浏览器,说点长期用的实际感受
前端·网络
POMAGTOR2 小时前
【硬件笔记|磁吸连接器安装规范、失效分析与选型验证方案】
网络·嵌入式硬件