微信小程序wx.request請求數據報錯:不在以下request合法域名列表中

NO IMAGE

首先寫一個後臺的數據接口,地址是:http://localhost/weicms/index.php?s=/addon/Cms/Cms/getList

然後使用wx.request調用後臺數據接口的地址

示例代碼

 1 wx.request({
2   url: 'http://localhost/weicms/index.php?s=/addon/Cms/Cms/getList',
3   data: {
4     x: '',
5     y: ''
6   },
7   header: {
8     'content-type': 'application/json' // 默認值
9   },
10   success (res) {
11     console.log(res.data)
12   }
13 })

運行代碼,效果如下圖:

微信小程序wx.request請求數據報錯:不在以下request合法域名列表中

從上圖中看到頁面一片空白,沒有獲取到數據,並且控制檯報錯(request 合法域名校驗出錯;http://localhost 不在以下 request 合法域名列表中)

為何出現這種錯誤?

打開wx.request網絡請求的開發文檔可以看到

微信小程序wx.request請求數據報錯:不在以下request合法域名列表中

上面截圖中紅色框就是問題所在(小程序服務器域名配置中是不能使用IP地址跟localhost),示例代碼中wx.request請求的url地址包含localhost,因此出錯。

但是一般開發過程中都要先在本地開發調試。如果沒法使用ip地址跟localhos,本地開發調試過程中如何獲取數據呢,有沒有辦法在本地開發調試的時候屏蔽這個錯誤呢?

答案是有的。開發文檔中指出了可以跳過域名校驗,如下圖:

微信小程序wx.request請求數據報錯:不在以下request合法域名列表中

具體在哪裡開啟不檢驗域名的選項呢?在微信開發者工具中,點擊詳情後,選中不檢驗合法域名,如下圖所示:

微信小程序wx.request請求數據報錯:不在以下request合法域名列表中

此時,再次運行代碼後,效果如下圖:

微信小程序wx.request請求數據報錯:不在以下request合法域名列表中

從上圖看到數據已經成功獲取到了,且控制也沒有報錯,只是提示:配置中關閉合法域名、web-view(業務域名)、TLS 版本以及 HTTPS 證書檢查

最後

覺得文章不錯的話,給我個關注哇,點個讚唄!

如果對文章有疑問或想技術交流,可關注公眾號【GitWeb】與我一起探索學習!

微信小程序wx.request請求數據報錯:不在以下request合法域名列表中

相關文章

JavaScript進階之道

Python進階之道

白話分析自適應跟響應式的區別

swiper.js簡單快速實現輪播滑動(兼容PC端、移動端)