日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
微信小程序中wx.request的示例分析

這篇文章主要介紹了微信小程序中wx.request的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)是一家專業(yè)提供共青城企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、網(wǎng)站制作、HTML5、小程序制作等業(yè)務(wù)。10年已為共青城眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

微信小程序 wx.request----接口調(diào)用方式

最近開發(fā)了一個微信小程序版的任務(wù)管理系統(tǒng),在向Java后臺發(fā)送接口時遇到了一些問題,在這里做一個簡單的總結(jié)。

官方接口

官方給出的接口叫做wx.request,請求方式比較簡單,下面是官網(wǎng)給出的請求實例。

wx.request({
 url: 'test.php', //僅為示例,并非真實的接口地址
 data: {
   x: '' ,
   y: ''
 },
 header: {
   'content-type': 'application/json'
 },
 success: function(res) {
  console.log(res.data)
 }
})

存在的問題

wx.request請求的header中content-type默認(rèn)為application/json,如果我們想換種方式比如用"application/x-www-form-urlencoded"會發(fā)現(xiàn)在請求頭信息中并沒有取代默認(rèn)的application/json而是新增了這種方式,另外在用jquery.ajax請求時即便同樣使用application/json方式來請求,得到的數(shù)據(jù)格式也不相同,無論用什么請求方式ajax都會將請求數(shù)據(jù)轉(zhuǎn)換為&name1=value1&name2=value2的形式,這樣在根據(jù)content-type來解析請求數(shù)據(jù)時就會出現(xiàn)問題,不知道微信是有意這樣做還是它根本就是個bug。總之是給我?guī)砹瞬槐匾穆闊?/p>

微信小程序發(fā)送的是https請求,在本地調(diào)試時可以用http,如果放在手機(jī)上測試時校驗請求方式和域名,不合法會報以下錯誤:

微信小程序中wx.request的示例分析

為了方便請求,可以對wx.request做一個簡單的封裝,這樣我們再調(diào)用的時候就方便了許多,代碼如下:

var app = getApp();
function request(url,postData,doSuccess,doFail,doComplete){
   var host = getApp().conf.host;
   wx.request({
    url: host+url,
    data:postData,
    method: 'POST', 
    success: function(res){
     if(typeof doSuccess == "function"){
       doSuccess(res);
     }
    },
    fail: function() {
     if(typeof doFail == "function"){
       doFail();
     }
    },
    complete: function() {
     if(typeof doComplete == "function"){
       doComplete();
     }
    }
   });
 }
}

module.exports.request = request;

如果一個接口在不同地方頻繁用到,原本設(shè)想寫一個函數(shù),然后將函數(shù)暴露供其他js調(diào)用,但后來發(fā)現(xiàn)wx.request中設(shè)置async是無效的,只能發(fā)異步請求,所以如果想寫一個函數(shù)來返回調(diào)用接口得到的數(shù)據(jù)就比較難實現(xiàn)。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“微信小程序中wx.request的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!


分享標(biāo)題:微信小程序中wx.request的示例分析
文章地址:http://www.dlmjj.cn/article/pdghhj.html