为 Node JS 服务器设置用户代理

Set user agent for Node JS server

是否可以配置简单的 Node JS 服务器的用户代理?例如,我想 运行 我的节点服务器使用 iPhone 用户代理来模拟设备显示。不确定是否有 NPM 包执行此操作或自定义 javascript 来操作 Node JS 服务器的用户代理。

详细信息:我知道 express-user-agent

它只会在您的 Express 应用程序中提供您的解析功能和访问您当前用户代理的权限。

这是我的 Node JS 服务器的代码:

 var express = require('express');
 var app = express();
 var server = require('http').createServer(app);
 var io = require('socket.io')(server);
 var exec = require('child_process').exec;
 var shell = require('shelljs');

 app.use('/public', express.static(__dirname + '/public'));

 app.get('/', function(req, res,next) {
  res.sendFile(__dirname + '/index.html');
 });

 server.listen(4200);

 io.on('connection', function(client) {
  client.on('join', function(data) {
    console.log(data);
  });

 client.on('command', function(data) {
  console.log(data);
  });
 });

看这个:

var request = require('request');

var options = {
  url: 'http://localhost:4200/test',
  headers: {
    'User-Agent': 'MY IPHINE 7s'
  }
};

function callback(error, response, body) {
          //do somethings
}

request(options, callback);

例如,您可以将 test-route 添加到您的服务器并发送获取请求。不要忘记url来请求,必须是http://localhost:4200/test,代码:

...

 app.use('/public', express.static(__dirname + '/public'));

 app.get('/', function(req, res,next) {
  res.sendFile(__dirname + '/index.html');
 });

app.get('/test', function(req, res,next) {
  console.log(req.headers);
});


server.listen(4200);

...