ブラウザのURLから直接送信されたリクエストと、リモートWebページから呼び出されたリソースの違いを区別することはできますか?
たとえば、誰かがWebブラウザで私のURLに直接アクセスしたとき( http://mywebsite.com と入力)、ユーザーが私のアプリのリソースを呼び出したときに、Webページを提供したいとします。別のドメインからのURLを介して(<img src='http://mywebsite.com' />
)それでは、別のコンテンツを提供したいと思います。
リクエストとヘッダーを確認しましたが、関係なく同じように見えます
request.header
でreferer
文字列を探していると思います。
したがって、単純なバージョンは次のようになります。
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');
以下のanuからの入力を反映するように回答を編集しました-referer
である必要があります
ミドルウェアでは、この方法で「req.headers.Origin」を使用する必要があります
app.use(function(req, res, next) {
//var Origin=req.headers.Origin
next();
});