Я пытался интегрировать мое угловое 7 веб-приложение с QZ Tray для печати без диалогового окна предварительного просмотра.Но получил неподдерживаемую версию WebSocket.Пожалуйста, помогите мне решить это?Спасибо
- Dependencies
"dependencies": {
"@agm/core": "^1.0.0-beta.6",
"@angular/animations": "^7.2.11",
"@angular/cdk": "^7.3.6",
"@angular/common": "^7.2.11",
"@angular/compiler": "^7.2.11",
"@angular/core": "^7.2.11",
"@angular/forms": "^7.2.11",
"@angular/http": "^7.2.11",
"@angular/material": "^7.2.11",
"@angular/platform-browser": "^7.2.11",
"@angular/platform-browser-dynamic": "^7.2.11",
"@angular/router": "^7.2.11",
"@angular/upgrade": "^7.2.11",
"js-sha256": "^0.9.0",
"qz-tray": "^2.0.10",
"roboto-fontface": "0.8.0",
"rxjs": "6.4.0",
"rxjs-compat": "6.3.0",
"sha": "^3.0.0",
"ws": "7.0.0",
"zone.js": "^0.8.29"
},
Теперь вот что я сделал
import * as qz from 'qz-tray';
import { sha256 } from 'js-sha256';
qz.api.setSha256Type(data => sha256(data));
qz.api.setPromiseType(function promise(resolver) { return new Promise(resolver); });
qz.api.setWebSocketType(require('ws'));
var createHash = require('sha.js');
qz.api.setSha256Type(function(data) {return createHash('sha256').update(data).digest('hex');});
qz.websocket.connect().then(qz.printers.getDefault).then(printer => console.log("Default printer: " + printer))
.then(qz.websocket.disconnect)
.catch(err => console.error(err));
Выходной журнал:
utils.ts:414 Error: Unsupported WebSocket version detected: HyBi-00/Hixie-76 at qz-tray.js:667 at new ZoneAwarePromise (zone.js:910) at Object.promise (utils.ts:21) at Object.connect (qz-tray.js:654) at Utils.push../src/app/@core/one.utils/utils/common/utils.ts.Utils.initPrinterService (utils.ts:405)