Hi all,
今天读到这样一段代码,由于 UNIX 功底不太好,不知道为何作者在这里先把域名和端口包装起来,随后就拆包?这么做是有什么好处嘛?谢谢
def canonicalize_tcp(addr, port)
packed = Socket.pack_sockaddr_in(port, addr)
port, addr = Socket.unpack_sockaddr_in(packed)
/:/ =~ addr ? "[#{addr}]:#{port}" : "#{addr}:#{port}"
end