Подтвердить что ты не робот

Node - Сообщить о происхождении запроса

Можно ли отличить запрос от прямого URL-адреса в браузере и ресурса, вызываемого с удаленной веб-страницы?

Например, я хотел бы обслуживать веб-страницу, когда кто-то напрямую посещает мой URL-адрес (типы http://mywebsite.com) в веб-браузере, но когда пользователь вызывает ресурс в моем приложении через URL из отдельного домена (например, <img src='http://mywebsite.com' />), я хотел бы обслуживать разные контенты.

Я просмотрел запрос и в заголовках, но он выглядит одинаково независимо от

4b9b3361

Ответ 1

Я думаю, что вы ищете строку 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

Ответ 2

В промежуточном программном обеспечении вы должны использовать этот способ "req.headers.origin"

app.use(function(req, res, next) {
    //var origin=req.headers.origin
    next();
});