17

ブラウザの URL から直接送信されたリクエストと、リモート Web ページから呼び出されたリソースの違いを見分けることはできますか?

たとえば、誰かが Web ブラウザーで私の URL に直接アクセスしたとき ( http://mywebsite.comを入力) に Web ページを提供したいのですが、ユーザーが別のドメインからの URL を介して私のアプリのリソースを呼び出したときです。 (のように<img src='http://mywebsite.com' />) では、別のコンテンツを提供したいと思います。

リクエストとヘッダーを調べましたが、関係なく同じように見えます

4

2 に答える 2

26

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');

以下のanuからの入力を反映するように回答を編集しました-referer

于 2012-08-09T05:48:46.117 に答える