欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

微信小程序開(kāi)發(fā)實(shí)戰(zhàn)(21):發(fā)起HTTPS請(qǐng)求 - 新聞資訊 - 云南小程序開(kāi)發(fā)|云南軟件開(kāi)發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開(kāi)發(fā)/軟件開(kāi)發(fā)

知識(shí)

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷(xiāo)的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷(xiāo)工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!

您當(dāng)前位置>首頁(yè) » 新聞資訊 » 小程序相關(guān) >

微信小程序開(kāi)發(fā)實(shí)戰(zhàn)(21):發(fā)起HTTPS請(qǐng)求

發(fā)表時(shí)間:2021-1-11

發(fā)布人:葵宇科技

瀏覽次數(shù):67

wx 對(duì)象中有一個(gè) request 方法,可以發(fā)起 HTTPS 請(qǐng)求。該方法只有一個(gè)對(duì)象類(lèi)型參數(shù)。該對(duì)象支持如下所示。

  • url String 類(lèi)型, 必選,開(kāi)發(fā)者服務(wù)器接口地址,必須使用配置后的域名

  • data Object String 類(lèi)型,可選,請(qǐng)求的參數(shù)

  • header Object 類(lèi)型,可選,設(shè)置請(qǐng)求的 header , header 中不能設(shè)置 Referer

  • method        String 類(lèi)型,可選,請(qǐng)求的方法,默認(rèn)為 GET ,有效值: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT

  • dataType String 類(lèi)型,可選,響應(yīng)數(shù)據(jù)的類(lèi)型,默認(rèn)為 json 。如果設(shè)置了 dataType json ,則會(huì)嘗試對(duì)響應(yīng)的數(shù)據(jù)做一次 JSON.parse

  • success Function 類(lèi)型,可選,收到開(kāi)發(fā)者服務(wù)成功返回的回調(diào)函數(shù), res = {data: ' 開(kāi)發(fā)者服務(wù)器返回的內(nèi)容 '}

  • fail Function 類(lèi)型,可選,接口調(diào)用失敗的回調(diào)函數(shù)

  • complete Function 類(lèi)型,可選, 接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)

注意, data 屬性可以是 Object ,也可以是 String 類(lèi)型,但最終發(fā)送給服務(wù)器的數(shù)據(jù)是 String 類(lèi)型,如果傳入的 data 不是 String 類(lèi)型,會(huì)被轉(zhuǎn)換成 String 。轉(zhuǎn)換規(guī)則如下:

  • 對(duì)于 header['content-type'] 為 'application/json' 的數(shù)據(jù),會(huì)對(duì)數(shù)據(jù)進(jìn)行 JSON 序列化

  • 對(duì)于 header['content-type'] 為 'application/x-www-form-urlencoded' 的數(shù)據(jù),會(huì)將數(shù)據(jù)轉(zhuǎn)換成 query string (encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...)。

要想測(cè)試 wx.request 方法,首先需要有一個(gè)使用 https 的鏈接,并且該鏈接的域名需要與小程序服務(wù)器配置中設(shè)置的一樣。讀者可以利用上一節(jié)介紹的騰訊云的二級(jí)域名,也可以在網(wǎng)上找一個(gè) https 鏈接,但要注意,需要修改小程序服務(wù)器配置的“ request 合法域名”。這些 https 鏈接必須是在國(guó)內(nèi)注冊(cè)的,而且已經(jīng)成功備案。

為了方便,這里使用了如下鏈接來(lái)測(cè)試 wx.request 方法。讀者也可以使用其他的鏈接,但要求響應(yīng)數(shù)據(jù)為 json 格式,因?yàn)楹竺娴拇a要測(cè)試 json 數(shù)據(jù)解析。

https://edu.51cto.com/index.php?do=spree&m=getGifts

因此,要將“ request 合法域名”設(shè)置為 https://edu.51cto.com ,否則 wx.request 方法無(wú)法請(qǐng)求該鏈接。

下面的代碼使用 wx.request 方法請(qǐng)求該鏈接,并將 dataType 屬性值設(shè)為 text/plain ,這樣就會(huì)直接返回原始字符串。

wx.request({
  url: 'https://geekori.com/download/test.txt',
  dataType:'text/plain',
  success: function(res) {
    //  在控制臺(tái)中直接輸出返回的數(shù)據(jù)
    console.log(res.data)
  }
})

執(zhí)行這段代碼后,會(huì)在 Console 中輸入如圖 1 所示的信息,很明顯,返回的是原始的 json 數(shù)據(jù)。

圖1  響應(yīng)數(shù)據(jù)是純文本形式

現(xiàn)在將前面代碼中的 dataType 屬性去掉,這樣 wx.request 方法會(huì)認(rèn)為返回了 json 格式的數(shù)據(jù)(要將 test.txt 換成 data.json ,而且下載 json 格式的文件不能將 dataType 屬性設(shè)為 text/plain ),并會(huì)對(duì) json 格式的數(shù)據(jù)進(jìn)行解析,也就是說(shuō),這時(shí) res.data 就不再是字符串了,而是一個(gè) JSON 對(duì)象。返回的結(jié)果如圖 2 所示。

圖2  以JSON格式返回?cái)?shù)據(jù)

按著返回的 JSON 格式的數(shù)據(jù),已經(jīng)將其解析成相應(yīng)的對(duì)象和數(shù)組格式。例如,如果要獲取 data 對(duì)象中 coupons 數(shù)組第一個(gè)元素的 batchName 屬性的值,可以使用下面的代碼。

success: function(res) {
  console.log(res.data.data.coupons[0].batchName);
}

相關(guān)案例查看更多