微信小程序網(wǎng)絡(luò)數(shù)據(jù)請求服務(wù)實現(xiàn)詳解
一、小程序中網(wǎng)絡(luò)數(shù)據(jù)請求的限制
出于安全性方面的考慮,小程序官方對數(shù)據(jù)接口的請求做出了如下
兩個限制:
1.只能請求HTTPS類型的接口
2.必須將接口的域名添加到信任列表中
二、配置request合法域名
需求描述:假設(shè)在自己的微信小程序中,希望請求https:/ /www.yzq2ty.cn/域名下的接口
配置步驟:登錄微信小程序管理后臺->開發(fā)->開發(fā)設(shè)置->服務(wù)器域名->修改request合法域名
注意事項:
1.域名只支持https協(xié)議
2.域名不能使用IP地址或localhost
3.域名必須經(jīng)過ICP備案
4.服務(wù)器域名一個月內(nèi)最多可申請5次修改
三、發(fā)起GET請求
uni.request({
url:baseURL+options.url,
method:options.method || 'GET',
data:options.data ||{},
header:options.header||{},
dataType:options.dataType||'json',
success: (res) => {
resolve(res.data)
},
fail:(err)=>{
reject(err)
}
})四、發(fā)起POST請求
我的項目在登錄時,需要發(fā)起POST請求
import request from '../utils/request.js'
export function getLogin(username,password){
return request({
url:'/login',
method:'POST',
data:{
username,password
}
})
}五、在頁面剛加載時請求數(shù)據(jù)
在很多情況下,我們需要在頁面剛加載的時候,自動請求- -些初始化的數(shù)據(jù) 。此時需要在頁面的onLoad事件中調(diào)用獲取數(shù)據(jù)的函數(shù),示例代碼如下:
onLoad() {
uni.getSystemInfo({//獲取系統(tǒng)信息
success: (res) => {
// #ifdef H5
this.scrollH = res.windowHeight - uni.upx2px(88)
//#endif
// #ifndef H5
this.scrollH = res.windowHeight - uni.upx2px(225)
//#endif
}
}),
this.gethome()
this.qqmapsdk = new QQMapWX({
key: '3SUBZ-W5BCQ-FLM5G-GYOPG-D523V-DUFNH'
});
},六、跳過request合法域名校驗
如果后端程序員僅僅提供了http協(xié)議的接口、暫時沒有提供https協(xié)議的接口。
此時為了不耽誤開發(fā)的進度,我們可以在微信開發(fā)者工具中,臨時
開啟「開發(fā)環(huán)境不校驗請求域名、TLS版本及HTTPS證書」
跳過request合法域名的校驗。
七、關(guān)于跨域和Ajax的說明
跨域問題只存在于基于瀏覽器的Web開發(fā)中。由于小程序的宿主環(huán)境不是瀏覽器,而是微信客戶端,所以小程序中不存在跨域的問題。
Ajax技術(shù)的核心是依賴于瀏覽器中的XMLHttpRequest這個對象,由于小程序的宿主環(huán)境是微信客戶端,所以小程序中不能叫做“ 發(fā)起Ajax請求”,而是叫做“ 發(fā)起網(wǎng)絡(luò)數(shù)據(jù)請求”。
到此這篇關(guān)于微信小程序網(wǎng)絡(luò)數(shù)據(jù)請求服務(wù)實現(xiàn)詳解的文章就介紹到這了,更多相關(guān)小程序數(shù)據(jù)請求內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JavaScript判斷FileUpload控件上傳文件類型
在CS后臺代碼中獲取FileUpload控件上傳文件的類型是比較容易的!那么,能否在客戶端通過JavaScript腳本判斷FileUpload上傳文件類型呢?答案是可以的,下面通過一個小例子為大家展示2015-09-09
微信小程序使用GoEasy實現(xiàn)websocket實時通訊
這篇文章主要介紹了微信小程序使用GoEasy實現(xiàn)websocket實時通訊的方法,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05
javascript實現(xiàn)實時輸出當(dāng)前的時間
在網(wǎng)頁中實時的顯示時間,不但可以給網(wǎng)頁添色,還可以方便瀏覽者掌握當(dāng)前時間,為了提高網(wǎng)站的開發(fā)速度,可以把主代碼封裝在一個單獨的函數(shù)里面,在需要的時候直接調(diào)用而我為了演示,直接寫在了主頁面,方便大家觀看2015-04-04

