使用nodejs中httpProxy代理时候出现404异常的解决方法
投稿:jingxian
下面小编就为大家带来一篇使用nodejs中httpProxy代理时候出现404异常的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
在公司中使用nodejs构建代理服务器实现前后台分离,代码不能拿出来,然后出现httpProxy代理资源的时候老是出现404.明明被代理的接口是存在的。代码大概如下:
var http = require('http'), httpProxy = require('http-proxy'); var proxy = httpProxy.createProxyServer({}); var server = http.createServer(function(req, res) { proxy.web(req, res, { target: 'http://www.cnblogs.com/xiaopen/' }); }); console.log("listening on port 5050") server.listen(5050);
然后报错或者是404错误码。
解决方案:
在代理请求中,把请求头中的host给删除,改进代码如下:
var http = require('http'), httpProxy = require('http-proxy'); var proxy = httpProxy.createProxyServer({}); var server = http.createServer(function(req, res) { delete req.headers.host; proxy.web(req, res, { target: 'http://www.cnblogs.com/xiaopen/' }); }); console.log("listening on port 5050") server.listen(5050);
然后如期运行正确。
以上这篇使用nodejs中httpProxy代理时候出现404异常的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。