私はNodeJSとそのすべてのawesomenessの若干です。私はgeoip-liteとrequest-ip npmパッケージをどのように組み合わせて私のアプリのユーザーの所在地を取得するかを考えようとしています。NodejsクライアントIP
は、これまでのところ私が持っているこの
var requestIp = require('request-ip');
var geoip = require('geoip-lite');
var express = require('express');
var app = express();
//var ip = "108.219.41.178";//207.97.227.239
//var ip = req.headers['x-real-ip'] || req.connection.remoteAddress;
//var ip = req.header('x-forwarded-for') || req.connection.remoteAddress;
var ip = ???
var geo = geoip.lookup(ip);
var port = process.env.PORT || 3000;
/*app.use('/', function(req, res, next) {
var ipMiddleware = function(req, res, next) {
var clientIp = requestIp.getClientIp(req);
next();
};
});*/
app.get('/', function(req, res) {
res.send('<html><head><head/><body><h1>Hello World!</h1></body></html');
});
app.listen(port, function() {
console.log('Hello on 3000');/*always put console.log to see if its running/working*/
console.log(geo);
console.log("The IP is %s", geoip.pretty(ip));
});
/*node app.js to run*/
// var ip = req.headers['x-real-ip'] || req.connection.remoteAddress;
私はトラブル要求-IPを使用してIPを取得するために考え出すを抱えています。 geoip-liteはかなり簡単で2分かかりました。私はNodejsへの私のnoobnessがどちらも助けていないと思う。私が間違ってやっていることを私に見せたり、考えていないことを示すコード例は素晴らしいでしょう。
どのURLをテストしていますか?偶然、 'http:// localhost:3000 /'のようなものでしょうか? – Sgnl