Reputation: 99
Making a chat application referencing via Node in action, and upon running the server.js, got the following error: function serveStatic(response,cache,absPath) ^^^^^^^^ SyntaxError: Unexpected token function at Object.exports.runInThisContext (vm.js:73:16) at Module._compile (module.js:543:28) at Object.Module._extensions..js (module.js:580:10) at Module.load (module.js:488:32) at tryModuleLoad (module.js:447:12) at Function.Module._load (module.js:439:3) at Module.runMain (module.js:605:10) at run (bootstrap_node.js:418:7) at startup (bootstrap_node.js:139:9) at bootstrap_node.js:533:3
Here is the Server.js code:
var http=require('http');
var fs=require('fs');
var path=require('path');
var path= require('mime');
var cache={};
var server=http.createServer(function(request,response)
{
var filePath=false;
if(request.url=='/')
{
filePath= public/index.html;
}
else
{
'public' + request.url;
}
var absPath= './'+filePath;
serveStatic(response,cache,absPath);
});
server.listen(3000,function()
{
console.log('Server listening to the port :3000');
});
function send404 (response )
{
response.writeHead(404,{'Content-Type' :'text/plain'});
response.write('Error 404: resource not found');
response.end();
}
function sendFile(response,filePath,fileContents)
{
response.wrieHead(200,
{"content-type":mime.lookup(filePath)})
};
response.end(fileContents);
}
function serveStatic(response,cache,absPath)
{
if(cache[absPath])
{
sendFile(response,absPath,cache[absPath]);
}
else
{
if(fs.exists(absPath, function(exists)))
{
if(exists)
{
fs.readFile(absPath,function(err,data))
{
if(err)
{
send404(response);
}
else
{
cache[absPath]=data;
sendFile(response,absPath,data);
}
});
}
else
{
send404(response);
}
});
}
}
Upvotes: 4
Views: 21909
Reputation: 1
In my case setting the buildOptimizer
from false
to true
worked.
From:
"development": {
"buildOptimizer": false,
"optimization": {
"scripts": true,
"styles": {
"minify": true,
"inlineCritical" : false
},
"fonts": true
},
"vendorChunk": true,
"extractLicenses": false,
"sourceMap": true,
"namedChunks": true
}
To:
"development": {
"buildOptimizer": true,
"optimization": {
"scripts": true,
"styles": {
"minify": true,
"inlineCritical" : false
},
"fonts": true
},
"vendorChunk": true,
"extractLicenses": false,
"sourceMap": true,
"namedChunks": true
}
Upvotes: 0
Reputation: 3154
You have extra brackets here:
function sendFile(response,filePath,fileContents)
{
response.wrieHead(200,
{"content-type":mime.lookup(filePath)})
};
response.end(fileContents);
}
Should be modified this way:
function sendFile(response, filePath, fileContents)
{
response.wrieHead(200, {
"content-type": mime.lookup(filePath)
});
response.end(fileContents);
}
Then your error will be dismissed.
Upvotes: 1