Print Portal: Client-Drucker werden nicht angezeigt oder Druckschaltfläche fehlt bei Verwendung von Chrome
Symptome
Beim Drucken über den Print Portal-Client in Chrome wird die Liste der Client-Drucker nicht geladen und der Drucken-Button kann aus der Benutzeroberfläche verschwinden.
In der Browser-Konsole kann eine Fehlermeldung wie diese erscheinen:
Zugriff auf XMLHttpRequest unter 'http://127.0.0.1:5952/Client/GetId/?_=1645721935000' vom Ursprung 'http://print.seagullscientific.com' wurde durch die CORS-Richtlinie blockiert: Der anfragende Client befindet sich nicht in einem sicheren Kontext und die Ressource liegt im privateren Adressraum `local`. core-libraries.min.js?buildNumber=175838:2
GET http://127.0.0.1:5952/Client/GetId/?_=1645721935000 net::ERR_FAILED
Umgebung
BarTender 2021 und neuer
Print Portal mit aktiviertem Client-Druck
Chrome Version 98 oder neuer.
Lösung
Die Fehlermeldung stammt von einer Funktion namens Private Network Access (früher bekannt als CORS-RFC1918), die es Webseiten einschränkt, Anfragen an ein privates Netzwerk zu senden, wenn die Seite nicht über sichere Protokolle läuft. Wenn Print Portal eine Liste lokaler Drucker anfordert, um sie in der Print Portal-Oberfläche anzuzeigen, wird eine solche CORS-Anfrage gestellt.
Wenn Print Portal mit HTTPS aktiviert ist, funktionieren diese CORS-Anfragen in Chrome problemlos. Ist HTTPS jedoch nicht aktiviert, werden diese CORS-Anfragen nun blockiert und können nicht ausgeführt werden. Um dieses Problem zu beheben, muss Print Portal mit HTTPS aktiviert werden, damit der Client-Druck im Chrome-Browser genutzt werden kann.
- Um HTTPS für Ihr eigenes Print Portal zu aktivieren, folgen Sie bitte diesem Artikel: Print Portal mit HTTPS absichern.
- Wenn Sie dieses Problem mit unserem öffentlichen Print Portal sehen, nutzen Sie bitte diese URL, um auf unsere Print Portal-Demo zuzugreifen: https://print.seagullscientific.com/
Weitere Ressourcen
Weitere Informationen zu Private Network Access und den Änderungen finden Sie in folgenden Artikeln:
- https://developer.chrome.com/blog/private-network-access-preflight/
- https://developer.chrome.com/blog/private-network-access-update/
- https://web.dev/cors-rfc1918-feedback/
Nur für den internen Gebrauch
Dieses Problem wurde erstmals als BUG-3348 gemeldet.