wx.request是微信小程序提供的一個基于Promise封裝的網(wǎng)絡(luò)請求API,可以用于發(fā)起HTTP/HTTPS請求。
使用wx.request需要傳入一個對象參數(shù),該對象包含以下幾個屬性:- url:必填,請求的服務(wù)器地址。wx.request是微信小程序中非常常用的一個API,可以用于發(fā)起網(wǎng)絡(luò)請求,獲取服務(wù)器的數(shù)據(jù)。

– data:可選,請求的參數(shù),可以是一個普通對象或字符串。
– header:可選,設(shè)置請求的header,header中不能設(shè)置Referer。
content-type需要通過header設(shè)置。
– method:可選,請求的方法,默認(rèn)為GET,支持GET、OPTIONS、HEAD、POST、PUT、DELETE、TRACE、CONNECT。
– dataType:可選,返回的數(shù)據(jù)格式,默認(rèn)為json,支持json、其他。
– responseType:可選,響應(yīng)的數(shù)據(jù)類型,默認(rèn)為text,支持text、arraybuffer。
– success:必填,接口調(diào)用成功的回調(diào)函數(shù)。
– fail:必填,接口調(diào)用失敗的回調(diào)函數(shù)。
– complete:可選,接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)。
以下是一個簡單的wx.request請求示例:“`wx.request({ url: \’https://www.example.com\’, method: \’GET\’, data: { name: \’張三\’, age: 18 }, header: { \’content-type\’: \’application/json\’ }, success: function(res) { console.log(res.data) }, fail: function(res) { console.log(res) }})“`在這個示例中,我們向`https://www.example.com`發(fā)起了一個GET請求,并且傳遞了一個參數(shù)對象`{ name: \’張三\’, age: 18 }`,設(shè)置了請求的header為`application/json`。
當(dāng)請求成功后,我們會在控制臺打印出響應(yīng)數(shù)據(jù)`res.data`,如果請求失敗,則會打印出錯誤信息`res`。
需要注意的是,由于小程序的限制,我們不能直接在header中設(shè)置Referer,如果需要設(shè)置Referer,可以通過在url中添加查詢參數(shù)的方式來實現(xiàn),例如:“`wx.request({ url: \’https://www.example.com?a=1&referer=https://www.example.com/\’, method: \’GET\’, header: { \’content-type\’: \’application/json\’ }, success: function(res) { console.log(res.data) }, fail: function(res) { console.log(res) }})“`除了簡單的GET請求外,wx.request還支持其他的請求方法,例如POST、PUT等。
例如,我們可以向服務(wù)器提交一個表單:“`wx.request({ url: \’https://www.example.com\’, method: \’POST\’, data: { name: \’張三\’, age: 18 }, header: { \’content-type\’: \’application/x-www-form-urlencoded\’ }, success: function(res) { console.log(res.data) }, fail: function(res) { console.log(res) }})“`在這個示例中,我們將請求方法設(shè)置為POST,并且傳遞了一個表單對象`{ name: \’張三\’, age: 18 }`。
此時,我們需要將header設(shè)置為`application/x-www-form-urlencoded`,以便服務(wù)器能夠正確地解析請求參數(shù)。
在使用wx.request時,需要注意設(shè)置請求的參數(shù)、header、回調(diào)函數(shù)等參數(shù),以保證請求能夠成功發(fā)出,并且能夠正確地處理響應(yīng)數(shù)據(jù)。