【问题标题】:How to properly populate InetSocketAddress如何正确填充 InetSocketAddress
【发布时间】:2020-04-07 15:47:18
【问题描述】:

我正在尝试填充 Host 标头。我已经为我的示例插入了虚拟数据,但我想知道我是否正确填充了它。当检查地址的值时,它看起来不像我预期的那样。我希望 [domain]:[port] 但我看到 [domain]/[ip address]:[port]。这正常吗?

这是我正在使用的线路

InetSocketAddress address = new InetSocketAddress("sample.com", 8080);

这是之后的变量值:

address = {InetSocketAddress} sample.com/173.230.129.147:8080

谢谢

【问题讨论】:

    标签: java spring-websocket


    【解决方案1】:

    是的,这很正常。 InetSocketAddress 尝试将主机名自动解析为 IP 地址。

    来自API specification

    这个类实现了一个 IP 套接字地址(IP 地址 + 端口号),它也可以是一对(主机名 + 端口号),在这种情况下将尝试解析主机名

    如果您想创建 InetSocketAddress 而不将主机名解析为 IP 地址,您可以使用 createUnresolved 工厂方法。

    jshell> InetSocketAddress.createUnresolved("example.com", 8080);
    $20 ==> example.com:8080
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-27
      • 1970-01-01
      • 1970-01-01
      • 2021-08-21
      • 2011-08-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多