溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

微信小程序(三):網(wǎng)絡(luò)請求

發(fā)布時間:2020-09-14 23:13:11 來源:腳本之家 閱讀:146 作者:阿東_Luck 欄目:web開發(fā)

前文講配置的時候我們說過,開發(fā)小程序時可以選擇有 APPID 和 無 APPID ,兩種方式。

1. 當(dāng)有APPID的情況下,進行網(wǎng)絡(luò)通信,只能和指定的域名進行通信。如果沒有進行配置,編譯時會報如下錯誤:

微信小程序(三):網(wǎng)絡(luò)請求

配置方法:

設(shè)置域名

需要在微信公眾平臺的小程序中設(shè)置域名。在微信小程序的設(shè)置界面可以看到設(shè)置選項:

微信小程序(三):網(wǎng)絡(luò)請求

選擇開發(fā)設(shè)置:

微信小程序(三):網(wǎng)絡(luò)請求

可以看到服務(wù)器設(shè)置:

微信小程序(三):網(wǎng)絡(luò)請求

這里我們可以設(shè)置我們這個APPID可以訪問的域名,每種最多可以設(shè)置兩個。(注意,此處只能使用 https 的域名,這個申請過程需要花費一定的時間)

2. 當(dāng)沒有APPID的情況下,就方便多了,可以隨意進行網(wǎng)絡(luò)請求,不限制域名,但是,這種情況下不能進行發(fā)布,也不能在手機上預(yù)覽。如果想正式做小程序開發(fā),還是需要有一個https的域名,但是學(xué)習(xí)的情況下http的就足夠了。

在小程序中網(wǎng)絡(luò)請求大致分為四種類型。

  •  普通HTTPS請求(wx.request)
  •  上傳文件(wx.uploadFile)
  •  下載文件(wx.downloadFile)
  •  WebSocket通信(wx.connectSocket)

這里主要講 wx.request:

使用wx.request可以發(fā)起一個http請求,一個微信小程序被限制為同時只有5個網(wǎng)絡(luò)請求。注意是同時。

    wx.request({
      url: 'http://192.168.1.137:80/app/guanggao',
      method: 'POST',
      data: {
         type: "1"
      },
      header: {
        'Accept': 'application/json'
      },
      success: function (res) {
        that.setData({
          images: res.data.data.guanggao
        })
      }
      fail:function(err){
        console.log(err)
      }
    })

上面的代碼會發(fā)送一個http get請求,其中的參數(shù)也比較容易理解。

  •  url 服務(wù)器的url地址
  •  data 請求的參數(shù)可以采用String data:”xxx=xxx&xxx=xxx”的形式或者Object data:{“userId”:1}的形式
  •  header 設(shè)置請求的header
  •  method http的方法,默認為GET請求
  •  success 接口成功的回調(diào)
  •  fail 接口失敗的回調(diào)

另外還有一個參數(shù)沒有在代碼里: 

  •  complete 調(diào)用接口結(jié)束之后的回調(diào),無論成功或者失敗該接口都會被調(diào)用

超時的設(shè)置

在前文中已經(jīng)提到了在app.js中設(shè)置networkTimeout可以設(shè)置四種類型網(wǎng)絡(luò)訪問的超時時間:

"networkTimeout":{
  "request": 10000,
  "connectSocket": 10000,
  "uploadFile": 10000,
  "downloadFile": 10000
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI