我们在F5设备后面隐藏了一个Web服务。 F5接受https请求,解密消息,然后将解密的消息发送到我们的Web服务。 Web服务以解密的消息响应F5,然后F5加密并发送回Web服务请求的发起者。
此Web服务适用于以某些语言编写的客户端,但不适用于其他语言。这个问题涉及基于Websphere JRE和库的Java实现。而其他(工作)语言将HTTP标头的Host字段设置为ourhost.net,而Java(通过https发送时)将HTTP标头的Host字段设置为ourhost.net:443。我意识到https来自端口443,但我不明白为什么Java认为有必要在Host字段中包含该端口。
有什么想法吗?
答案 0 :(得分:0)
由于443是HTTPS的默认端口,因此不需要将其包含在Host标头中,但这样做也没有错误。请参阅section 14.23 of the HTTP 1.1 spec。