<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[获取客户端 ip 地址]]></title><description><![CDATA[<h2>Node.js</h2>
<pre><code>//传入请求HttpRequest
function getClientIp(req) {
        return req.headers['x-forwarded-for'] ||
        req.connection.remoteAddress ||
        req.socket.remoteAddress ||
        req.connection.socket.remoteAddress;
}
</code></pre>
<hr />
<h2>Express</h2>
<pre><code>//express框架则简单许多
req.ip
</code></pre>
<hr />
<h2>Colyseus</h2>
<ul>
<li><strong>使用 Express</strong></li>
</ul>
<pre><code>//arena.config.ts 的 initializeExpress 函数中
app.use('/*',  (req, res) =&gt; {
            console.log(&quot;getting ip address...&quot;)
            var ip = req.ip;
            console.log(ip);
        });
</code></pre>
<ul>
<li><strong>使用 onAuth 函数</strong></li>
</ul>
<pre><code>//Room 类的 onAuth 函数
    onAuth(client: Client, options: any, request?: http.IncomingMessage): any {
        console.log(&quot;getting ip address...&quot;)
        var ip = request.headers['x-forwarded-for'] || request.connection.remoteAddress;
        console.log(ip);
        return true;
    }
</code></pre>
]]></description><link>http://discuss.colyseus.io/topic/902/获取客户端-ip-地址</link><generator>RSS for Node</generator><lastBuildDate>Sat, 07 Mar 2026 09:38:43 GMT</lastBuildDate><atom:link href="http://discuss.colyseus.io/topic/902.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 01 Feb 2023 06:09:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to 获取客户端 ip 地址 on Wed, 01 Feb 2023 09:47:49 GMT]]></title><description><![CDATA[<h2>Node.js</h2>
<pre><code>//传入请求HttpRequest
function getClientIp(req) {
        return req.headers['x-forwarded-for'] ||
        req.connection.remoteAddress ||
        req.socket.remoteAddress ||
        req.connection.socket.remoteAddress;
}
</code></pre>
<hr />
<h2>Express</h2>
<pre><code>//express框架则简单许多
req.ip
</code></pre>
<hr />
<h2>Colyseus</h2>
<ul>
<li><strong>使用 Express</strong></li>
</ul>
<pre><code>//arena.config.ts 的 initializeExpress 函数中
app.use('/*',  (req, res) =&gt; {
            console.log(&quot;getting ip address...&quot;)
            var ip = req.ip;
            console.log(ip);
        });
</code></pre>
<ul>
<li><strong>使用 onAuth 函数</strong></li>
</ul>
<pre><code>//Room 类的 onAuth 函数
    onAuth(client: Client, options: any, request?: http.IncomingMessage): any {
        console.log(&quot;getting ip address...&quot;)
        var ip = request.headers['x-forwarded-for'] || request.connection.remoteAddress;
        console.log(ip);
        return true;
    }
</code></pre>
]]></description><link>http://discuss.colyseus.io/post/2326</link><guid isPermaLink="true">http://discuss.colyseus.io/post/2326</guid><dc:creator><![CDATA[COCO]]></dc:creator><pubDate>Wed, 01 Feb 2023 09:47:49 GMT</pubDate></item></channel></rss>