node.js socket.io-跟踪请求的url
我正在测试发送请求的URL,但当我尝试时:node.js socket.io-跟踪请求的url,node.js,url,express,socket.io,Node.js,Url,Express,Socket.io,我正在测试发送请求的URL,但当我尝试时: http://localhost:4000/foo 浏览器显示:无法获取/foo 我的服务器代码: var express = require('express'); var app = express(); var http = require('http'); var server = http .createServer(app); var io = require('socket.io').listen(server); var url =
http://localhost:4000/foo
浏览器显示:无法获取/foo
我的服务器代码:
var express = require('express');
var app = express();
var http = require('http');
var server = http .createServer(app);
var io = require('socket.io').listen(server);
var url = require('url');
server.listen(4000);
app.get('/', function (request, response) {
var pathname = url.parse(request.url).pathname;
console.log("currentpathname: "+pathname);
});
我想用“foo”来表示:
Express只处理您告诉它要处理的路径,它返回404s的所有其他路径,其中包含消息,如
Cannot GET/foo
app.get('/'
仅处理'/'
以处理需要使用的所有路径app.get'*'
作为注释,规范的
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
相当于
express().all('*', function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
为了了解事情是如何工作的,我建议只玩一下核心http模块。将app.get('/',…
更改为app.get('*',…
express().all('*', function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(1337, '127.0.0.1');