是否可以区分直接来自浏览器中的URL的请求与从远程网页调用的资源之间的区别?
例如,当有人在网络浏览器中直接访问我的网址(在http://mywebsite.com中输入)时,我想提供一个网页,但是当用户通过来自单独域的网址调用我的应用上的资源时(比如<img src='http://mywebsite.com' />)然后我想提供不同的内容.
我查看了请求和标题,但无论如何看起来都一样
Gat*_* VP 25
我想你正在寻找中的referer字符串request.header.
所以简单版本看起来像这样:
http.createServer(function (req, res) {
var ref = req.headers.referer;
if(ref) {
// serve special content
}
else {
// serve regular homepage
}
}).listen(1337, '127.0.0.1');
Run Code Online (Sandbox Code Playgroud)
编辑了答案以反映下面anu的输入 - 它应该是 referer
在中间件中,您必须使用这种方式“ req.headers.origin”
app.use(function(req, res, next) {
//var origin=req.headers.origin
next();
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16166 次 |
| 最近记录: |