簡體   English   中英

對象沒有方法writeHead

[英]Object has no method writeHead

Rohit Rai的“ socket.IO實時Web應用程序開發”中的示例。 這是關於路由請求的第二個示例:

var http =  require("http");
var url =  require("url");

var route = {
        routes:{},
        for: function(path,handler){
            this.routes[path] = handler;
        }
};

route.for("/start", function(response,request){
        response.writeHead(200,{"Content-Type": "text/plain"});
        response.write("Hello2");
        response.end();
    }
);

route.for("/finish", function(response,request){
        response.writeHead(200, {"Content-Type": "text/plain"});
        response.write("Goodbye2");
        response.end();
    }
);

function onRequest(request,response){
    var pathname = url.parse(request.url).pathname;
    console.log("Request for: " + pathname + " received");

    if(typeof route.routes[pathname] === 'function'){
        route.routes[pathname](request,response);

   }
    else{
       response.writeHead(404,{"Content-Type": "text/plain"});
       response.end("404 Not Found!");
   }
};

http.createServer(onRequest).listen(9999);
console.log("Server has started");

控制台說服務器已經啟動,404可以工作,但是一旦我嘗試啟動或完成,我在控制台中就會收到一條錯誤消息:引用resources.js:12 TypeError Object#沒有方法'writeHead'?

您在/ start和/ finish行中交換了請求和響應參數。

route.for("/start", function(request,response){
route.for("/finish", function(request,response){

那應該修復錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM