web-dev-qa-db-ja.com

Node JSサーバーのユーザーエージェントを設定する

単純なNode JSサーバーのユーザーエージェントを構成することは可能ですか?たとえば、iPhoneユーザーエージェントを使用してノードサーバーを実行し、デバイスの表示をシミュレートしたいと思います。これを実行するNPMパッケージ、またはNode JSサーバーのユーザーエージェントを操作するためのカスタムJavaScriptがあります。

詳細:私は知っています 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);
  });
 });
10
Nizar B.

これを見て:

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を追加して、getリクエストを送信できます。リクエストする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);

...
15
siavolt