這篇文章主要介紹了微信小程式使用request網路請求操作,結合實例形式分析了wx.request(object)網路請求操作的具體使用技巧,需要的朋友可以參考下
本文實例講述了微信小程式使用request網路請求操作。分享給大家供大家參考,具體如下:
小程式提供了很多api,極大的方便了開發者,其中網絡請求api是wx.request(object)
,這是小程式與開發者的伺服器實現資料互動的一個很重要的api。
官方參數說明如下
OBJECT參數說明:
#參數名稱 | 類型 | 必填 | 說明 |
---|---|---|---|
url | String | 是 | |
data | Object、String | 否 | |
header | 否 | ||
method | #String | 否 | |
#success | Function | ||
#否 | 收到開發者服務成功回傳的回呼函數,res = {data: '開發者伺服器傳回的內容'} | ||
Function | #否 | 介面呼叫失敗的回調函數 |
#Function
介面呼叫結束的回呼函數(呼叫成功、失敗都會執行)
#最簡單的用法如下(以POST請求為範例)
bindSearchChange:function(e){ var keyword = e.detail.value; wx.request({ url:'xxxxxxxxx', data:{}, header: {'Content-Type': 'application/json'}, success: function(res) { console.log(res) } }) }module.exports
是將req方法暴露出去使得別的檔案中可以使用該方法,由於js函數是非同步執行的,所以return 的是回調函數,而不是特定的資料為了其他檔案方便呼叫此方法,我們在根目錄的app .js檔案中將其註冊成為全域函數,如下
//app.js var http = require('service/http.js') App({ onLaunch: function () { //调用API从本地缓存中获取数据 var logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) }, getUserInfo:function(cb){ var that = this if(this.globalData.userInfo){ typeof cb == "function" && cb(this.globalData.userInfo) }else{ //调用登录接口 wx.login({ success: function () { wx.getUserInfo({ success: function (res) { that.globalData.userInfo = res.userInfo typeof cb == "function" && cb(that.globalData.userInfo) } }) } }) } }, globalData:{ userInfo:null }, func:{ req:http.req } })
這時這個req就是全域的了,在呼叫時我們可以使用getApp.func.req()來調用,具體如下
var app = getApp() Page({ data: { }, onLoad: function (opt) { //console.log(opt.name) app.func.req('/api/get_data',{},function(res){ console.log(res) }); } })###上面是我整理給大家的,希望今後會對大家有幫助。 ######相關文章:#########在js中如何判斷假日#############在Angular中如何實作查詢天氣預報###### ######在Angular中如何實作顯示輸入內容######
以上是在微信小程式中如何使用request網路進行請求操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!