您的位置:首页 > 编程语言 > Java开发

阿里云 部署Spring Boot+NettySocketIO 支持HTTPS

2019-04-08 19:00 615 查看

(备注:Spring Boot 打war包,外置tomcat)

1、在阿里云购买免费型DV SSL

2、在tomcat 中安装证书

参考(https://blog.csdn.net/She_lock/article/details/80984992

3、将pfx 证书转为jks格式,并将jks文件放到项目中

参考(https://www.geek-share.com/detail/2605440803.html) 

4、修改代码,支持https (无需写hostname)

public void startServer(){
Configuration config = new Configuration();
config.setPort(port);

SocketConfig socketConfig = new SocketConfig();
socketConfig.setReuseAddress(true);
config.setSocketConfig(socketConfig);

//设置https
config.setKeyStorePassword("123456");
InputStream stream = NettySocketIOServer.class.getResourceAsStream("/cert/server.jks");
config.setKeyStore(stream);

server = new SocketIOServer(config);
server.addListeners(eventListenner);
server.start();
}

 5、js填写请求地址,测试

var socket,
url =  "https://www.demo.com:9198";
socket = io.connect(url);
socket.on('connect', function () {
console.log('Client has connected to the server!');
});
socket.on('disconnect', function () {
console.log('The client has disconnected!');
});
socket.on('connect_error',function (error) {
console.error(error);
});

6、说明(由于是外置tomcat,Spring Boot 无需做多余的配置了) 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: