[微信支付]使用Natapp實現本地內網進行開發測試以及解決webpack "Invalid Host header"問題

1.微信開發的無奈

最近接手的系統在做微信支付,可是微信的支付授權目錄要求必須是外網域名且不支持ip地址
在這裏插入圖片描述
我了個親孃來,那好吧,直接在服務器上進行開發測試,結果微信支付太多bug,在服務器測試不方便,那咋辦呀!!!能否在本地繼續開發測試,又能按照微信支付授權目錄的規則呢?
使用Natapp等進行內網穿刺即可

2.什麼Natapp呢?

natapp 基於ngrok的反向代理軟件,通過在公網和本地運行的 Web 服務器之間建立一個安全的通道。natapp 可捕獲和分析所有通道上的流量,便於後期分析和重放.

簡單說就是通過此軟件獲取一個域名,使外網的人能通過這個域名訪問到我們的內網.
官方網站:Natapp
在這裏插入圖片描述

3.如何使用Natapp呢?

  1. 點擊首頁的 立即下載
  2. 選擇要下載的版本,我是 windows 64 位
    在這裏插入圖片描述
  3. 下載完畢後,點擊右上角的 免費註冊 ,註冊完成後點擊 登錄 ,登錄成功需 實名認證
  4. 認證完成後點擊 購買隧道 -> 免費隧道 [有能力的童靴可以根據自己的條件購買] (也可參考官方文檔 https://natapp.cn/article/natapp_newbie 教程進行操作)
    在這裏插入圖片描述
    各種產品比較請自行查看.
  5. 購買並創建隧道
    在這裏插入圖片描述
  6. 點擊 我的隧道 進行查看 (此處重點記一下 authtoken)
    在這裏插入圖片描述
  7. 打開剛下載的natapp文件夾在這裏插入圖片描述
    按shift+鼠標右鍵 在此處打開命令窗口 輸入 natapp -authtoken=Xxx Xxx爲剛纔所注意的authtoken
    在這裏插入圖片描述
    進入成功後顯示以下界面
    在這裏插入圖片描述

Tunnel Status Online 代表鏈接成功
Version 當前客戶端版本,如果有新版本,會有提示
Forwarding 當前穿透 網址 或者端口
Web Interface 是本地Web管理界面,可在隧道配置打開或關閉,僅用於web開發測試
Total Connections 總連接數
Avg Conn Time 0.00ms 這裏不代表,不代表,不代表 延時,需要注意!

  1. 微信支付授權目錄配置 Forwarding 對應的網址 此處爲 http://ugsmmv.natappfree.cc
    在這裏插入圖片描述
    注:因爲 Forwarding 對應的網址 每次打開都會更換,所以每次都需要重新配置一下微信支付授權目錄
  2. 輸入 Forwarding 對應的網址即可進行訪問
    在這裏插入圖片描述
  3. 出現的問題:對於本系統來說,因爲使用vue做的前端開發,所以配置好網址後會出現錯誤
    頁面出現 Invalid Host header問題在這裏插入圖片描述
    出現問題原因:
    這是由於新版的webpack-dev-server出於安全考慮,默認檢查hostname,如果hostname不是配置內的,將中斷訪問。
    解決方法:
    可以在build目錄中的webpack.base.config.js中添加如下webpack-dev-server配置:
    找到 module.exports ={} 在其內部添加,devServer: { disableHostCheck: true, },
    在這裏插入圖片描述
    保存後重新啓動即可
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章