java本地socket服務(wù)端暴露至公網(wǎng)訪問
Java 服務(wù)端demo環(huán)境
jdk1.8
框架:springboot+maven
開發(fā)工具:IDEA
在pom文件引入第三包封裝的netty框架maven坐標(biāo)
dependency>
? ?<groupId>io.github.fzdwx</groupId>
? ?<artifactId>sky-http-springboot-starter</artifactId>
? ?<version>0.10.6</version>
</dependency>
截圖

創(chuàng)建java服務(wù)端,以接口模式創(chuàng)建,方便外部調(diào)用
@GetMapping("/getConnect")
public void getConnect(HttpServerRequest request){
? ? request.upgradeToWebSocket(ws -> {
? ? ws.mountOpen(h->{
? ? ? ? ? ?ws.send("連接成功,開始聊天吧!");
? ? ? ?});
? ? ?ws.mountText(s -> {
? ? ? ? ?System.out.println(s);
? ? ? ? ? ? ?//對(duì)方回復(fù)
? ? ? ? ? ? ?System.out.println("客戶端回復(fù): "+s);
? ? ? ? ? ? ?//獲取控制臺(tái)輸入的值
? ? ? ? ? ? ?Scanner scanner =new Scanner(System.in);
? ? ? ? ? ? ?String next = scanner.next();
? ? ? ? ? ? ?ws.send(next);
? ? ?});
? ? });
}
啟動(dòng)服務(wù),出現(xiàn)以下信息表示啟動(dòng)成功,暴露端口默認(rèn):9999


客戶端

收到服務(wù)端回復(fù)的消息,連接成功
由于以上設(shè)置的地址會(huì)隨機(jī)變化,在24小時(shí)內(nèi),我們需要固定tcp公網(wǎng)地址(需升級(jí)專業(yè)套餐),打開官網(wǎng)www.cpolar.com,點(diǎn)擊預(yù)留,然后保留tcp地址.




替換我們go客戶端里的連接服務(wù)端地址即可