How does netty server supports both Http and Https protocols with a single port?(Netty服务器如何通过单个端口同时支持http和HTTPS协议?)
问题描述
我们知道,我们提供http service
监听80端口,https service
监听443端口。为什么我们不在一个港口上提供两种服务呢?具体原因是什么?Netty服务器如何通过单个端口同时支持http和HTTPS协议?
推荐答案
您可以这样做,但我认为这不是一个好主意,因为两个端口都为Http或HTTPS定义得很好。也就是说,如果您真的想这样做,您可以根据消息的前5个字节检测是否使用了SSL,然后动态注入SSL处理程序。
Netty本身包括OptionalSslHandler
,它正好为您完成此操作:
https://github.com/netty/netty/blob/netty-4.1.32.Final/handler/src/main/java/io/netty/handler/ssl/OptionalSslHandler.java
这篇关于Netty服务器如何通过单个端口同时支持http和HTTPS协议?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Netty服务器如何通过单个端口同时支持http和HTTPS协议?


基础教程推荐
- 如何在 Spring @Value 注解中正确指定默认值? 2022-01-01
- 多个组件的复杂布局 2022-01-01
- 不推荐使用 Api 注释的描述 2022-01-01
- Java 实例变量在两个语句中声明和初始化 2022-01-01
- 验证是否调用了所有 getter 方法 2022-01-01
- 大摇大摆的枚举 2022-01-01
- 如何在 JFrame 中覆盖 windowsClosing 事件 2022-01-01
- 从 python 访问 JVM 2022-01-01
- 在 Java 中创建日期的正确方法是什么? 2022-01-01
- Java Swing计时器未清除 2022-01-01