1. 業務場景
- 當我們的項目是部署在本地的時候,如何讓其他用戶(不在同一個局域網之下)來進行調用呢?這時我們就可以使用內網穿透將自己的IP通過映射成相應的地址,然后再通過映射后的地址來進行訪問本地的項目。
2. 什么是內網穿透?
- 內網穿透:就是將自己的內網IP暴露到公網環境中,也可以說是將自己的電腦放在公網之中。
3. 如何使用內網穿透?
-
3.1 下載natapp應用程序(選擇自己的版本Mac、Windows)
-
3.2 到https://natapp.cn/進行注冊登錄,得到自己的
authtoken
-
3.3 可以到https://natapp.cn/article/natapp_newbie去查看圖文教程
-
注意事項
在用Mac運行時可能會遇到無權限問題。 -
3.4.把之前的應用程序下載解壓至任意目錄下,得到natapp如何運行natapp。
- window下,直接雙擊
natapp.exe
即可. - 在Linux/Mac 下 需要先給執行權限
chmod a+x natapp
- 然后再運行即可
./natapp
- window下,直接雙擊
4. 實際案例
-
這兒先提供一個springboot-demo.jar(也就是SpringBoot打的jar包),能夠提供本地服務。
-
啟動服務:運行jar包,使用命令:
java -jar springboot-demo.jar
或者寫一個bat文件,里面包含java -jar springboot-demo.jar
命令,這樣就可以直接雙擊bat文件啟動應用。 -
示例:這兒創建的是
springboot-server.bat
文件
雙擊運行即可,如下: -
主要用到如下截圖中的接口地址進行測試,默認端口8080。
-
本地服務地址:
http://localhost:8080/hello
運行結果如下:
在3.3步驟操作完成之后,應該會得到一個authtoken
如下:
接着,把得到的authtoken
值配置到config.ini
文件中去,如下:
切記:config.ini
與natapp.exe
要在同級目錄下
雙擊natapp運行,啟動之后如下:
這里的http://j8rjma.natappfree.cc
地址就相當於http://localhost:8080
,http://j8rjma.natappfree.cc
這個地址被映射到了http://localhost:8080
上。此時,只要有外網的地方訪問http://j8rjma.natappfree.cc/hello
就能訪問到本機服務。
測試結果: