是否可以使用node-http-proxy为img src属性设置请求标头?我收到401错误,因为我的服务器期待一个头属性:每个请求的值,包含img src属性。我正在为index.js文件中的所有请求设置标头,但是没有为img请求设置标头。我正在尝试检查请求是否是针对图像的,然后在使用node-http-proxy发送请求之前设置标头。
// index.js -- works for non img src requests
if ($rootScope.foobar_header !== undefined) {
headersGetter()['X-Special-Proxy-Header'] = $rootScope.foobar_header;
}
if (data) {
return angular.toJson(data);
}
function proxyMiddleware(req,res,next){
if (req.url.indexOf(proxyApiPrefix) !== -1) {
if (req.url.indexOf(proxyImgPrefix) !== -1) {
console.log('img request');
proxy.on('proxyReq', function(proxyReq, req, res, options) {
proxyReq.setHeader('X-Special-Proxy-Header', 'foobar_header');
});
}
proxy.web(req, res);
} else {
next();
}
}
答案 0 :(得分:0)
我认为您需要在运行服务器之前设置proxy.on...
位,而不是在某些中间件内部,尽管如果没有看到更多代码,很难确定。
docs表明您可以执行以下操作:
proxy.on('proxyReq', function(proxyReq, req, res, options) {
if (req.url.indexOf(proxyApiPrefix) !== -1) {
if (req.url.indexOf(proxyImgPrefix) !== -1) {
console.log('img request');
proxyReq.setHeader('X-Special-Proxy-Header', 'foobar_header');
}
}
});