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就能訪問到本機服務。
測試結果:

