有一种方法可以绕过网站的引荐来源检查吗? 使用nodeJS像代理或类似的东西?
有关信息,我必须在服务器上播放一些媒体,但是此服务器会检查引荐来源以获取特定值,如果值不在此处,则会将我重定向到404.
对于我个人的学习,我想在不在浏览器上安装插件的情况下找到nodeJS的解决方案。我已经完成了开发扩展(WebExtension API)以重写请求标头并添加referrer值。
由于
更新 这是我现在正在做的一个示例代码。 console.log向我显示添加的请求,但不显示Chrome检查器。
var http = require('http');
var httpProxy = require('http-proxy');
var express = require('express');
var app = express();
var url = "http://localhost:3001"; // create target server for testing
var proxy = httpProxy.createProxyServer();
// simple url
app.all("/radio/*", function(req, res) {
req.headers['referer'] = 'http://new-referer-url';
proxy.web(req, res, {
target: url,
headers: req.headers
});
console.log(req.headers); // the request is passed here but not in Chrome inspector
});
app.listen(3000);
答案 0 :(得分:0)
欺骗referer
(原文如此)非常简单:只需在您的请求中添加标题:
yourRequest.setHeader("Referer", "the value");
或者当您创建请求时:
var yourRequest = http.request({
/* ...other options here, host, protocol, etc... */,
headers: {
Referer: "the value"
}
});
请注意,referer
只有三个r
,而不是四个,如果它拼写正确的话。这只是其中之一。