国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?

這篇具有很好參考價值的文章主要介紹了如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本地websocket服務(wù)端暴露至公網(wǎng)訪問【cpolar內(nèi)網(wǎng)穿透】

1. Java 服務(wù)端demo環(huán)境
  • jdk1.8
  • 框架:springboot+maven
  • 工具IDEA
2. 在pom文件引入第三包封裝的netty框架maven坐標(biāo)
<dependency>
   <groupId>io.github.fzdwx</groupId>
   <artifactId>sky-http-springboot-starter</artifactId>
   <version>0.10.6</version>
</dependency>

注意:pom文件里需注釋掉springbootweb啟動器,web啟動器默認(rèn)是tomcat服務(wù)啟動,會和netty服務(wù)沖突

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

3. 創(chuàng)建服務(wù)端,以接口模式調(diào)用,方便外部調(diào)用
@GetMapping("/getConnect")
public void getConnect(HttpServerRequest request){

    request.upgradeToWebSocket(ws -> {

    ws.mountOpen(h->{

           ws.send("連接成功,開始聊天吧!");
       });

     ws.mountText(s -> {

         System.out.println(s);

             //對方回復(fù)
             System.out.println("客戶端回復(fù): "+s);

             //獲取控制臺輸入的值
             Scanner scanner =new Scanner(System.in);

             String next = scanner.next();

             ws.send(next);

     });

    });

}
4. 啟動服務(wù),出現(xiàn)以下信息表示啟動成功,暴露端口默認(rèn)9999

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

5. 創(chuàng)建隧道映射內(nèi)網(wǎng)端口

這里我們用cpolar內(nèi)網(wǎng)穿透來映射內(nèi)網(wǎng)端口,它支持http/https/tcp協(xié)議,不限制流量,無需公網(wǎng)ip,也不用設(shè)置路由器,操作簡單。

  • cpolar一鍵安裝腳本:(國內(nèi)用戶)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 或短鏈接安裝方式:(國外用戶)
curl -sL https://git.io/cpolar | sudo bash
  • 查看cpolar版本信息
cpolar version

如果正常顯示,則安裝成功

  • cpolar進(jìn)行token認(rèn)證

cpolar官網(wǎng):https://www.cpolar.com/

進(jìn)入cpolar官網(wǎng),注冊一個賬號并登錄進(jìn)入后臺,點擊左側(cè)的驗證,可以查看到token碼,復(fù)制并執(zhí)行命令進(jìn)行認(rèn)證

cpolar authtoken xxxxxxxxxxxxxxxxxx
  • 配置cpolar開機(jī)自啟動
sudo systemctl enable cpolar
  • 守護(hù)進(jìn)程方式,啟動cpolar
sudo systemctl start cpolar
  • 查看cpolar守護(hù)進(jìn)程狀態(tài),如正常為active,則為正常啟動狀態(tài)
sudo systemctl status cpolar

cpolar安裝成功后,默認(rèn)會配置兩個默認(rèn)隧道:一個ssh隧道和一個website隧道,可自行刪減或者修改。

接著把本地服務(wù)通過cpolar暴露到公網(wǎng),瀏覽器訪問http://127.0.0.1:9200,登錄cpolar web ui 界面,創(chuàng)建一個tcp隧道,指向9999端口

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

注意:該隧道選擇的是臨時tcp地址和端口,24小時內(nèi)會變化,如需固定tcp地址,可升級為專業(yè)套餐做tcp地址固定!

6. 查看狀態(tài)->在線隧道,復(fù)制所創(chuàng)建隧道的公網(wǎng)地址加端口號

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

此時,websocket服務(wù)端已經(jīng)從本地localhost暴露至公網(wǎng),接著我們創(chuàng)建一個客戶端測試公網(wǎng)訪問socket服務(wù)端連接

7. 以基于go的socket客戶端為例,通過公網(wǎng)連接java socket服務(wù)端
  • go版本:1.19
  • 工具:vscode
8. 通過git下載websocket框架
go get github.com/gorilla/websocket

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

9. 創(chuàng)建客戶端, 注意:Host值為上面復(fù)制的隧道公網(wǎng)地址!!
package main

import (
    "fmt"
    "log"
    "net/url"

    "github.com/gorilla/websocket"
)

func main() {

    // 定義服務(wù)端的地址

    u := url.URL{
        Scheme: "ws",
        Host:   "3.tcp.vip.cpolar.cn:10793", //地址為復(fù)制隧道的公網(wǎng)地址
        Path:   "/eth/getConnect"} //服務(wù)端controller 映射地址

    // 與服務(wù)端建立連接
    c, _, err := websocket.DefaultDialer.Dial(u.String(), nil)
    if err != nil {
        log.Fatal("dial:", err)
    }
    defer c.Close()

    // 阻塞主線程
    down := make(chan byte)

    // 啟動一個線程,讀取從服務(wù)端發(fā)送過來的數(shù)據(jù)
    go func() {
        for {
            _, message, _ := c.ReadMessage()
            fmt.Println("服務(wù)端回復(fù):" + string(message))
        }
    }()

    //啟動一個線程輸入消息
    go func() {

        for {
            var input string

            fmt.Scanln(&input)

            c.WriteMessage(websocket.TextMessage, []byte(input))

        }

    }()

    for {
        <-down
    }
}
10. 接著啟動服務(wù),與服務(wù)端連接,出現(xiàn)服務(wù)端返回的字樣表示連接成功

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

11. 客戶端在控制臺輸入信息,回車

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

12. 服務(wù)端出現(xiàn)客戶端發(fā)送的信息

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

13. 服務(wù)端控制臺輸入消息,回車

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

14. 客戶端收到服務(wù)端回復(fù)的消息,連接成功

如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?,websocket,網(wǎng)絡(luò)協(xié)議,網(wǎng)絡(luò),個人開發(fā),經(jīng)驗分享,遠(yuǎn)程工作

需要注意,免費(fèi)使用cpolar所生成的公網(wǎng)地址為隨機(jī)臨時地址,24小時內(nèi)會發(fā)生變化。如果需要長期遠(yuǎn)程連接,建議為其配置固定的tcp端口地址。即登錄cpolar官網(wǎng)后,點擊預(yù)留,保留一個固定tcp端口地址,然后將其配置到相應(yīng)的隧道中即可。文章來源地址http://www.zghlxwxcb.cn/news/detail-751760.html

到了這里,關(guān)于如何將本地websocket發(fā)布至公網(wǎng)并實現(xiàn)遠(yuǎn)程訪問?的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 如何使用HadSky搭配內(nèi)網(wǎng)穿透工具搭建本地論壇并發(fā)布至公網(wǎng)可遠(yuǎn)程訪問

    如何使用HadSky搭配內(nèi)網(wǎng)穿透工具搭建本地論壇并發(fā)布至公網(wǎng)可遠(yuǎn)程訪問

    目錄 前言 1. 網(wǎng)站搭建 1.1 網(wǎng)頁下載和安裝 1.2 網(wǎng)頁測試 1.3 cpolar的安裝和注冊 2. 本地網(wǎng)頁發(fā)布 2.1 Cpolar臨時數(shù)據(jù)隧道 2.2 Cpolar穩(wěn)定隧道(云端設(shè)置) 2.3 Cpolar穩(wěn)定隧道(本地設(shè)置) 2.4 公網(wǎng)訪問測試 總結(jié) 作者簡介: ?懶大王敲代碼,計算機(jī)專業(yè)應(yīng)屆生 今天給大家聊聊如何使用

    2024年01月22日
    瀏覽(27)
  • 如何將本地websocket服務(wù)端從本地暴露至公網(wǎng)實現(xiàn)客戶端遠(yuǎn)程連接

    如何將本地websocket服務(wù)端從本地暴露至公網(wǎng)實現(xiàn)客戶端遠(yuǎn)程連接

    1. Java 服務(wù)端demo環(huán)境 jdk1.8 框架:springboot+maven 工具IDEA 2. 在pom文件引入第三包封裝的netty框架maven坐標(biāo) 注意:pom文件里需注釋掉springbootweb啟動器,web啟動器默認(rèn)是tomcat服務(wù)啟動,會和netty服務(wù)沖突 3. 創(chuàng)建服務(wù)端,以接口模式調(diào)用,方便外部調(diào)用 4. 啟動服務(wù),出現(xiàn)以下信息表示啟動成功

    2024年04月10日
    瀏覽(30)
  • 如何無需公網(wǎng)IP實現(xiàn)遠(yuǎn)程訪問Windows本地WebDAV服務(wù)中存儲文件

    如何無需公網(wǎng)IP實現(xiàn)遠(yuǎn)程訪問Windows本地WebDAV服務(wù)中存儲文件

    自己用Windows Server搭建了家用NAS主機(jī),WebDAV的文件共享方式當(dāng)然也是必不可少的。 本文使用的是WIN10 專業(yè)版。 1.1 打開控制面板,查看方式改為“類別”,進(jìn)入“程序”,“啟用或關(guān)閉Windows功能” 1.2 在Internet Information Services(IIS)中勾選“IIS管理控制臺”、“Windows身份驗證

    2024年01月17日
    瀏覽(18)
  • 如何在Linux本地搭建Tale網(wǎng)站并實現(xiàn)無公網(wǎng)ip遠(yuǎn)程訪問

    如何在Linux本地搭建Tale網(wǎng)站并實現(xiàn)無公網(wǎng)ip遠(yuǎn)程訪問

    今天給大家?guī)硪豢罨?Java 語言的輕量級博客開源項目——Tale,Tale使用輕量級mvc框架Blage開發(fā),它擁有小、美、快、穩(wěn)的特點。該項目完全開源、免費(fèi),能夠讓你快速搭建包含前、后臺的博客系統(tǒng),大大節(jié)省了搭建私人博客的時間。 接下來教大家如何部署Tale個人博客,并

    2024年03月13日
    瀏覽(28)
  • 如何通過本地搭建wamp服務(wù)器并實現(xiàn)無公網(wǎng)IP遠(yuǎn)程訪問

    如何通過本地搭建wamp服務(wù)器并實現(xiàn)無公網(wǎng)IP遠(yuǎn)程訪問

    軟件技術(shù)的發(fā)展日新月異,各種能方便我們生活、工作和娛樂的新軟件層出不窮,但也有一些經(jīng)過時間和用戶考驗的老牌軟件屹立不倒。就一我們熟悉的網(wǎng)站集成環(huán)境來說,全球就有很多種server軟件。每個軟件都有各自的特色(雖然同質(zhì)化很嚴(yán)重),也擁有自己固定的適用群

    2024年02月12日
    瀏覽(141)
  • Apache Superset如何實現(xiàn)無公網(wǎng)ip實時遠(yuǎn)程訪問本地數(shù)據(jù)【內(nèi)網(wǎng)穿透】

    Apache Superset如何實現(xiàn)無公網(wǎng)ip實時遠(yuǎn)程訪問本地數(shù)據(jù)【內(nèi)網(wǎng)穿透】

    Superset是一款由中國知名科技公司開源的“現(xiàn)代化的企業(yè)級BI(商業(yè)智能)Web應(yīng)用程序”,其通過創(chuàng)建和分享dashboard,為數(shù)據(jù)分析提供了輕量級的數(shù)據(jù)查詢和可視化方案。Superset在數(shù)據(jù)處理和可視化方面具有強(qiáng)大的功能,能夠滿足企業(yè)級的數(shù)據(jù)分析需求,并為用戶提供直觀、靈

    2024年02月04日
    瀏覽(22)
  • 如何遠(yuǎn)程訪問本地jupyter notebook服務(wù)器,實現(xiàn)無公網(wǎng)IP端口映射

    如何遠(yuǎn)程訪問本地jupyter notebook服務(wù)器,實現(xiàn)無公網(wǎng)IP端口映射

    轉(zhuǎn)載自遠(yuǎn)控源碼文章:公網(wǎng)遠(yuǎn)程訪問jupyter notebook【cpolar內(nèi)網(wǎng)穿透】 Jupyter Notebook,它是一個交互式的數(shù)據(jù)科學(xué)和計算環(huán)境,支持多種編程語言,如Python、R、Julia等。它在數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、教育和文檔編寫等領(lǐng)域都有很廣泛的應(yīng)用。 重要的是,Jupyter Notebook可以

    2024年02月03日
    瀏覽(27)
  • 如何在使用Docker快速部署StackEdit并實現(xiàn)公網(wǎng)訪問本地編輯器遠(yuǎn)程辦公

    如何在使用Docker快速部署StackEdit并實現(xiàn)公網(wǎng)訪問本地編輯器遠(yuǎn)程辦公

    StackEdit是一個受歡迎的Markdown編輯器,在GitHub上擁有20.7k Star!,它支持將Markdown筆記保存到多個倉庫,包括Gitee、GitHub和Gitea。此在線筆記工具還提供了一些便捷功能,如拖拽或粘貼上傳圖片、文件搜索功能,以及可切換為炫酷的暗黑主題,這些功能特別適合那些喜歡使用Mar

    2024年02月04日
    瀏覽(24)
  • 如何在Docker中搭建MinIO容器并實現(xiàn)無公網(wǎng)ip遠(yuǎn)程訪問本地服務(wù)

    如何在Docker中搭建MinIO容器并實現(xiàn)無公網(wǎng)ip遠(yuǎn)程訪問本地服務(wù)

    MinIO是一個開源的對象存儲服務(wù)器,可以在各種環(huán)境中運(yùn)行,例如本地、Docker容器、Kubernetes集群等。它兼容Amazon S3 API,因此可以與現(xiàn)有的S3工具和庫無縫集成。MinIO的設(shè)計目標(biāo)是高性能、高可用性和可擴(kuò)展性。它可以在分布式模式下運(yùn)行,以滿足不同規(guī)模的存儲需求。 MinIO是

    2024年01月17日
    瀏覽(28)
  • 如何在Docker本地搭建流程圖繪制神器draw.io并實現(xiàn)公網(wǎng)遠(yuǎn)程訪問

    如何在Docker本地搭建流程圖繪制神器draw.io并實現(xiàn)公網(wǎng)遠(yuǎn)程訪問

    前些天發(fā)現(xiàn)了一個巨牛的人工智能學(xué)習(xí)網(wǎng)站,通俗易懂,風(fēng)趣幽默,忍不住分享一下給大家。點擊跳轉(zhuǎn)到網(wǎng)站 提到流程圖,大家第一時間可能會想到Visio,不可否認(rèn),VIsio確實是功能強(qiáng)大,但是軟件為收費(fèi),并且因為其功能強(qiáng)大,導(dǎo)致安裝需要很多的系統(tǒng)內(nèi)存,并且是不可跨

    2024年01月23日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包