私はクライアント側のjavascriptにユーザーのgeoIP情報を渡すのが最善の方法を見つけようとしています。私はこれのためのnginxを設定して、私のノード+エクスプレスサーバーに情報を送信することができます。nginxヘッダーをnodejs経由でクライアントに渡す
私は次のステップが何であるか分かりません。私は送信しようとしているヘッダがクライアント側のjsによって直接読み取られることはありません。
これは私が持っているものである -
Nodejs--
router.get('/', function(req, res, next) {
res.setHeader("geoip_country_code", req.headers.geoip_country_code);
res.setHeader("geoip_city", req.headers.geoip_city);
res.render('index', { title: 'bla' });
console.log(req.headers);
});
nginxの -
location/{
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header GEOIP_COUNTRY_CODE $geoip_country_code;
proxy_set_header GEOIP_CITY $geoip_city;
proxy_set_header GEOIP_LATITUDE $geoip_latitude;
proxy_set_header GEOIP_LONGITUDE $geoip_longitude;
proxy_pass http://app:3000;
}
これは私がすでに使っている 'proxy_set_header'とどう違うのですか?この方法でクライアントjsからアクセスできますか? – charsi
'proxy_set_header'はクライアントからサーバへヘッダを追加しますが、' add_header'はサーバからクライアントへヘッダを追加します。 –
ああ私はこれを間違った方法でやっているのがわかります。クライアントjsからnginxヘッダを問い合わせることはできますか? – charsi