var http = require('http');
var fs = require('fs')
http.createServer(function(req, res){
fs.readFile('./samplehtml.html',function(err,data){
res.writeHead(200,{'Content-Type':'text/html'});
res.write(data);
res.end();
});
}).listen(7000);
when i run the above code it shows SITE CANNOT BE REACHED in browser. The following error is shown
TypeError [ERR_INVALID_ARG_TYPE]: The first argument must be of type string or an instance of Buffer or Uint8Array. Received undefined
at write_ (_http_outgoing.js:722:11)
at ServerResponse.write (_http_outgoing.js:687:15)
at ReadFileContext.callback (C:\Users\riyab\OneDrive\Desktop\node\main.js:7:13)
at FSReqCallback.readFileAfterOpen [as oncomplete] (fs.js:282:13) {
code: 'ERR_INVALID_ARG_TYPE'
When you use fs.readFile(), you must check for errors. It is very likely that the file ./samplehtml.html doesn't exist (probably, because the path is not relative to the location of the .js script, as you might expect).
Try this:
const path = require("path");
...
fs.readFile(path.join(__dirname, "./samplehtml.html"), (err, data) => {
...