我已经在我们的在线软件与 Epson EPOS 打印机之间建立了集成。 (epos-2.22.0.js) 我已经成功连接了服务器打印机,例如 tm-t88vi。我已经通过使用 OpenSSL 生成自定义 SSL 证书并通过 EpsonNet Config 在打印机中安装它们解决了很多 SSL 问题。然后在浏览器中添加证书的 CA,并且 https 通信已启动并正在运行。仍然有一些错误并且没有打印但是又一个小时的谷歌搜索让我找到了这个解决方案:
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
确保来自 epson js 库的所有不安全请求都升级为安全请求,并且我们的网络应用程序不会抛出有关不安全通信的错误,并且正在打印!
但它与 TM-P80 有何不同。我遇到的第一个问题是 EsponNet Config 不接受我的自定义证书。经过几个小时的尝试,我发现它只接受 v1 ssl 证书(使用 openssl-1.1 创建)。在 Chrome 中打开 EpsonConfig 页面时,这给了我灰色锁(SSL ok)。但是我的应用程序仍然不会打印错误:
POST https://192.168.2.180/cgi-bin/epos/service.cgi?devid=local_printer&timeout=10000 net::ERR_EMPTY_RESPONSE
如果我注释掉“upgrade-insecure-requests”标签,并接受页面上的不安全内容(Chrome 设置),则请求转到:(http 而不是 https)
POST http://192.168.2.180/cgi-bin/epos/service.cgi?devid=local_printer&timeout=10000
打印机正在打印,但整个应用程序被标记为不安全。 另一个测试: http://192.168.2.180/cgi-bin/epos/service.cgi 返回 HTTP 代码 200 https://192.168.2.180/cgi-bin/epos/service.cgi 返回 HTTP 代码 404
总结一下:
有没有人处理过这个确切的问题,或者有其他想法可以尝试?
提前感谢您的反应!
你应该为 https 使用端口 8084。
http 8008 https 8043