単純な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);
});
});
これを見て:
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);
...