Esempio n. 1
0
        /// <summary>
        /// 解析客户端地址
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        private void iniPeerAddress(RpcCallContext context)
        {
            var peer = context.Peer;
            var idx1 = peer.IndexOf(':');

            if (idx1 > 0)
            {
                this.IpVersion = peer.Substring(0, idx1);
            }
            var idx2 = peer.LastIndexOf(':');

            if (idx2 > idx1)
            {
                this.IpAddress = peer.Substring(idx1 + 1, idx2 - idx1 - 1);
                if (this.IpAddress == "[::1]")
                {
                    this.IpAddress = "127.0.0.1";
                }
                this.Port = peer.Substring(idx2 + 1).ToInt(0);
            }
        }
Esempio n. 2
0
 public PeerAddress(RpcCallContext context)
 {
     iniPeerAddress(context);
 }