2017-08-31 4 views
0
に』引数は関数でなければなりません」

app.js「TypeError例外: 『取得私は、「ノードapp.js」コマンドを使用して、それを実行しようとすると、リスナーのNode.js

var url = require('url'); 
var http = require('http'); 
var fs = require('fs'); 

http.createServer(200, function(req, res){ 
    var q = url.parse(req.url, true); 
    var filename = "." + q.pathname; 
    fs.readFile(filename, function(err, data){ 
    if(err) 
    { 
     res.writeHead(404, {'Content-Type' : 'text/html'}); 
     return res.end("404 Not Found!!!"); 
    } 
    res.writeHead(200, {'Content-Type' : 'text/html'}); 
    res.write(data); 
    return res.end(); 
    }); 
}).listen(8080); 

を、私は取得しています次のエラーが発生しました:

events.js:238 
    throw new TypeError('"listener" argument must be a function'); 
    ^

TypeError: "listener" argument must be a function 
    at _addListener (events.js:238:11) 
    at Server.addListener (events.js:298:10) 
    at new Server (_http_server.js:263:10) 
    at Object.createServer (http.js:35:10) 
    at Object.<anonymous> (E:\AngularJS\New folder\app2.js:7:6) 
    at Module._compile (module.js:573:30) 
    at Object.Module._extensions..js (module.js:584:10) 
    at Module.load (module.js:507:32) 
    at tryModuleLoad (module.js:470:12) 
    at Function.Module._load (module.js:462:3) 

解決方法を見つけようとしましたが、解決できませんでした。 ありがとうございます。

答えて

0

http.createServerは、functionと2コールバックアイテム(response, request)が必要です。

0

https://nodejs.org/api/http.html#http_http_createserver_requestlistenerがちょうど200

var url = require('url'); 
var http = require('http'); 
var fs = require('fs'); 

http.createServer(function(req, res){ 
    var q = url.parse(req.url, true); 
    var filename = "." + q.pathname; 
    fs.readFile(filename, function(err, data){ 
    if(err) 
    { 
     res.writeHead(404, {'Content-Type' : 'text/html'}); 
     return res.end("404 Not Found!!!"); 
    } 
    res.writeHead(200, {'Content-Type' : 'text/html'}); 
    res.write(data); 
    return res.end(); 
    }); 
}).listen(8080); 
を移動:単にあなたのcreateServer呼び出しから 200を削除するか、またはこれとそれを置き換える:

http.createServer(function(req, res) { ... }

あなたがここにこれについての詳細を読むことができます

関連する問題