Hallo effel,
boah ey, ich habe keine Ahnung was dieser require treibt, aber offenbar liefert er Dir ein komisches Konglomerat aus WebSocket-Konstruktor und Modulinformation zurück und erzeugt damit das Gleiche wie der Import.
Du bekommst eine Funktion zurück. Und offenbar ist das der WebSocket-Konstruktor (also der Client), angereichert um zusätzliche Eigenschaften.
Hab ich so rausgefunden:
const ws = require('ws');
console.log(typeof ws);
console.log(ws);
Mach's mal so:
const { WebSocketServer } = require('ws');
const socketServer = new WebSocketServer({ port:8443 });
.... rest unverändert
Die Deklaration const { WebSocketServer } = ... ist eine sogenannte Destrukturierung. require liefert ein Objekt, das die WebSocketServer-Eigenschaft enthält, und durch das Destrukturierungsmuster links vom = weiß JavaScript, dass Du Dich nur für diese Eigenschaft interessierst.
Rolf
--
sumpsi - posui - obstruxi
sumpsi - posui - obstruxi