2017-08-01 11 views
0

私は次のコード使用してIPアドレスをキャプチャしていたノードのjsのアプリケーションがあります。ここではコンバートreq.connection.remoteAddress:FFFF

var ip = req.headers['x-forwarded-for'] || 
    req.connection.remoteAddress || 

を、req.connection.remoteAddressが追加:: FFFFを:実際のIPの前に。 IPだけを:: ffffなしで返す標準的な方法はありますか?変換を行うために呼び出すAPIなどがありますか?

答えて

0

あなたは::ffff:後にあるものだけをキャプチャするために正規表現を使用することができます。

var reg = /([^f:]+)/; 
 
var str = '::ffff:127.0.0.1'; 
 
    
 
alert(reg.exec(str)[0]);

+0

私の質問があり、そこにありますIPAddressまたはストリッピング/正規表現を変換する他の標準的な方法はそれを行う唯一の方法ですか? – user1892775

0

あなたはそのためipaddr.jsを使用することができます。

const ipaddr = require('ipaddr.js'); 

let mappedAddr = '::ffff:127.0.0.1'; 
let ipv4Addr = ipaddr.process(mappedAddr).toString(); // -> 127.0.0.1