2015-07-25 2 views
0

Я новичок в мире веб-разработки с использованием MEAN-JS, и я пытаюсь создать несколько фреймов для отображения одного и того же веб-сайта для разных веб-браузеров (чтобы увидеть разницу между ie7 и 9, например), поэтому я попробовал для редактирования строки User-Agent, но это не сработает.Как изменить информацию о клиенте в заголовке запроса (User-Agent)?

ответ

0

Да, это возможно на стороне сервера (E, N в MEAN-JS) и проще с помощью request module, вам просто нужно указать строку пользовательского агента в объекте параметра внутри общего маршрута для перехвата любого запроса с вашего сайта и проверить, является ли это запросом для изображения (битового файла) или простого текста.
Вы можете найти строку агента пользователя, который вы хотите в этой ссылке: User Agent String.Com
Как это:

app.get('*', function (req, res){ 
     req.headers["user-agent"] = ‘YOUR USER AGENT STRING’; 
     var options = { 
      url: req.path, 
      headers: {'user-agent':req.headers['user-agent'], 
         'accept':req.headers.accept, 
      } 
     }; 
     if (/image\//.test(req.headers.accept)){ 
      options.encoding= null;} 
     request(options, function (error, response, body) { 
      if (!error && response.statusCode == 200) { 
       res.set(
      response.headers 

      ); 
       res.send(body); 

      } 
      else { 
       console.log('request error: ' + JSON.stringify(error)); 
       res.redirect('/'); 
      } 
     }); 
    }); 
0

Невозможно изменить заголовок User-Agent, отправленный браузером из кода на стороне клиента. Единственный способ добиться этого - проксировать запрос через ваш код на стороне сервера. Вам также придется изменить любой JavaScript (возвращенный сайтом), который проверяет User-Agent, чтобы переопределить его.

Однако изменение заголовка User-Agent не покажет вам, как выглядит веб-сайт в разных браузерах. Хотя это может привести к тому, что сайт будет возвращать несколько разные HTML/JS/CSS (но, вероятно, не так, как многие из тех, кто использует обнаружение агента пользователя в эти дни), IE7 и IE9 являются различными частями программного обеспечения, и они интерпретируют HTML/JS/CSS по-разному.

Единственный способ проверить, как выглядит сайт в IE7, - это фактически открыть его в IE7.

Смежные вопросы