这是我写的一个小的代理程序,用来测试一些案例。
var httpProxy = require('http-proxy'),
connect = require('connect'),
endpoint = {
host: 'googleeeeeee.com', // or IP address
port: 80,
},
staticDir = 'public';
var proxy = new httpProxy.RoutingProxy();
var app = connect()
.use(connect.logger('dev'))
.use(function(req, res) {
proxy.proxyRequest(req, res, endpoint);
console.log("Respose is " + res.statusCode);
})
.use(connect.static(staticDir))
.listen(80);
console.log("Server started");这使用了
"http-proxy": "0.8.x" "connect": "2.3.x"
当我运行这个程序并访问它时,statusCode是200通过的目标地址并不存在。任何帮助都非常感谢。这是对How to catch 404 errors using connect framework的延续
发布于 2014-02-13 17:52:06
这是由下面的代码解决的
创建了一个名为errorhandler.js的文件
module.exports = function() {
return function(req, res, next) {
var end = res.end;
res.end = function(chunk, encoding){
res.end = end;
res.end(chunk, encoding);
console.log("Reponse code is " + res.statusCode);
};
next();
}
}然后将其包含在中间件中
var httpProxy = require('http-proxy'),
connect = require('connect'),
endpoint = {
host: 'googleeeeeee.com', // or IP address
port: 80,
},
staticDir = 'public';
var proxy = new httpProxy.RoutingProxy();
var app = connect()
.use(require('./errorHandler').errorHandler())
.use(connect.logger('dev'))
.use(function(req, res) {
proxy.proxyRequest(req, res, endpoint);
})
.use(connect.static(staticDir))
.listen(80);
console.log("Server started");https://stackoverflow.com/questions/21731065
复制相似问题