我正在尝试填充Host标头。我已经为我的示例插入了虚拟数据,但我想知道我是否正确填充了该数据。当检查地址的值时,它似乎与我期望的不同。我期望使用[domain]:[port],但我看到的是[domain] / [ip address]:[port]。这正常吗?
这是我正在使用的行
InetSocketAddress address = new InetSocketAddress("sample.com", 8080);
这是之后的变量值:
address = {InetSocketAddress} sample.com/173.230.129.147:8080
谢谢
最佳答案
是的,这很正常。 InetSocketAddress
尝试自动将主机名解析为IP地址。
从API specification:
此类实现IP套接字地址(IP地址+端口号),也可以是一对(主机名+端口号),在这种情况下,将尝试解析主机名。
如果要创建InetSocketAddress而不将主机名解析为IP地址,则可以使用createUnresolved
工厂方法。
jshell> InetSocketAddress.createUnresolved("example.com", 8080);
$20 ==> example.com:8080
关于java - 如何正确填充InetSocketAddress,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61084010/