Adam Edney
Adam Edney

Reputation: 310

Node JS: net.Socket is not a constructor

The below code works fine if I run it from my command line, but if I run this code anywhere in my project I get this error:

net.Socket is not a constructor

I've tried making the below code an object and importing / requiring it into my project and I still get that error.

var net = require('net');

var client = new net.Socket();
    client.connect(3000, '127.0.0.1', function() {
    console.log('Connected');
    client.write('Hello, server! Love, Client.');
});

Am I miss understanding what require does, I also tried using import and import * as to obtain 'net'.

I'm not too sure what information would be useful in the situation. Any suggestions would be great.

Upvotes: 4

Views: 14526

Answers (2)

Sandeep chand
Sandeep chand

Reputation: 607

use node 16 version. these features are currently under Node.js v16.9.1 https://nodejs.org/dist/latest-v16.x/docs/api/net.html

Upvotes: 0

mscdex
mscdex

Reputation: 106696

There are no plain TCP sockets in the browser, so that is why trying to use net.Socket in the browser (via webpack, browserify, etc.) won't work.

There could be a "polyfill" of sorts that requires a server to make the TCP connection on the browser's behalf though (or perhaps via some bridge to a Flash or Java applet).

Upvotes: 9

Related Questions