Javascript 路由器未定义为Node.js
我是Node.js的新手,我正在尝试创建一个HTTP服务器,但由于某种原因,当我尝试将路由器放入购买URL请求时,它不起作用 我的代码: Server.jsJavascript 路由器未定义为Node.js,javascript,node.js,Javascript,Node.js,我是Node.js的新手,我正在尝试创建一个HTTP服务器,但由于某种原因,当我尝试将路由器放入购买URL请求时,它不起作用 我的代码: Server.js var url = require("url"); var http = require("http"); function start() { function onRequest(request, response) { var pathname = url.parse(request.url).pathname;
var url = require("url");
var http = require("http");
function start() {
function onRequest(request, response) {
var pathname = url.parse(request.url).pathname;
console.log("Request received.");
route(pathname);
response.writeHead(200, {"Content-Type" : "text/plain"});
response.write("Hello World");
response.end();
}
http.createServer(onRequest).listen(8888);
console.log("Server has started;");
}
exports.start = start;
var server = require("./server");
var router = require("./router");
server.start(router.route);
function route(pathname) {
console.log("About to route a request for " + pathname);
}
exports.route = route;
Index.js
var url = require("url");
var http = require("http");
function start() {
function onRequest(request, response) {
var pathname = url.parse(request.url).pathname;
console.log("Request received.");
route(pathname);
response.writeHead(200, {"Content-Type" : "text/plain"});
response.write("Hello World");
response.end();
}
http.createServer(onRequest).listen(8888);
console.log("Server has started;");
}
exports.start = start;
var server = require("./server");
var router = require("./router");
server.start(router.route);
function route(pathname) {
console.log("About to route a request for " + pathname);
}
exports.route = route;
Router.js
var url = require("url");
var http = require("http");
function start() {
function onRequest(request, response) {
var pathname = url.parse(request.url).pathname;
console.log("Request received.");
route(pathname);
response.writeHead(200, {"Content-Type" : "text/plain"});
response.write("Hello World");
response.end();
}
http.createServer(onRequest).listen(8888);
console.log("Server has started;");
}
exports.start = start;
var server = require("./server");
var router = require("./router");
server.start(router.route);
function route(pathname) {
console.log("About to route a request for " + pathname);
}
exports.route = route;
当尝试通过Node.js启动服务器时,会显示以下错误:
未定义路由
路由(路径名)
如何使其工作?您正在将
路由
传递到启动
函数,但未定义参数,您需要添加一个参数
function start(route) {
function onRequest(request, response) {
var pathname = url.parse(request.url).pathname;
console.log("Request received.");
route(pathname);
response.writeHead(200, {
"Content-Type": "text/plain"
});
response.write("Hello World");
response.end();
}
http.createServer(onRequest).listen(8888);
console.log("Server has started;");
}
谢谢你,乔治,成功了。如果你愿意的话,你可以把它作为一个答案,我将投票并标记为正确的评论。对于这些错误,伙计们,我很抱歉,我对这一点很陌生,有时(很多)会发生那些新手错误。