小程序網(wǎng)路請求wx.request
RequestTask wx.request(Object object)
發(fā)起 HTTPS 網(wǎng)絡請求。使用前請注意閱讀相關說明。
參數(shù)
Object object
屬性 類型 默認值 必填 說明 最低版本
url string 是 開發(fā)者服務器接口地址
data string/object/ArrayBuffer 否 請求的參數(shù)
header Object 否 設置請求的 header,header 中不能設置 Referer。
`content-type` 默認為 `application/json`
timeout number 否 超時時間,單位為毫秒。默認值為 60000 2.10.0
method string GET 否 HTTP 請求方法
合法值 說明
OPTIONS HTTP 請求 OPTIONS
GET HTTP 請求 GET
HEAD HTTP 請求 HEAD
POST HTTP 請求 POST
PUT HTTP 請求 PUT
DELETE HTTP 請求 DELETE
TRACE HTTP 請求 TRACE
CONNECT HTTP 請求 CONNECT
dataType string json 否 返回的數(shù)據(jù)格式
合法值 說明
json 返回的數(shù)據(jù)為 JSON,返回后會對返回的數(shù)據(jù)進行一次 JSON.parse
其他 不對返回的內(nèi)容進行 JSON.parse
responseType string text 否 響應的數(shù)據(jù)類型 1.7.0
合法值 說明
text 響應的數(shù)據(jù)為文本
arraybuffer 響應的數(shù)據(jù)為 ArrayBuffer
enableHttp2 boolean false 否 開啟 http2 2.10.4
enableQuic boolean false 否 開啟 quic 2.10.4
enableCache boolean false 否 開啟 cache 2.10.4
enableHttpDNS boolean false 否 是否開啟 HttpDNS 服務。如開啟,需要同時填入 httpDNSServiceId 。 HttpDNS 用法詳見 移動解析HttpDNS 2.19.1
httpDNSServiceId string 否 HttpDNS 服務商 Id。 HttpDNS 用法詳見 移動解析HttpDNS 2.19.1
enableChunked boolean false 否 開啟 transfer-encoding chunked。 2.20.2
forceCellularNetwork boolean false 否 wifi下使用移動網(wǎng)絡發(fā)送請求 2.21.0
success function 否 接口調用成功的回調函數(shù)
fail function 否 接口調用失敗的回調函數(shù)
complete function 否 接口調用結束的回調函數(shù)(調用成功、失敗都會執(zhí)行)
object.success 回調函數(shù)
參數(shù)
Object res
屬性 類型 說明 最低版本
data string/Object/Arraybuffer 開發(fā)者服務器返回的數(shù)據(jù)
statusCode number 開發(fā)者服務器返回的 HTTP 狀態(tài)碼
header Object 開發(fā)者服務器返回的 HTTP Response Header 1.2.0
cookies Array.<string> 開發(fā)者服務器返回的 cookies,格式為字符串數(shù)組 2.10.0
profile Object 網(wǎng)絡請求過程中一些調試信息,查看詳細說明 2.10.4
結構屬性 類型 說明
redirectStart number 第一個 HTTP 重定向發(fā)生時的時間。有跳轉且是同域名內(nèi)的重定向才算,否則值為 0
redirectEnd number 最后一個 HTTP 重定向完成時的時間。有跳轉且是同域名內(nèi)部的重定向才算,否則值為 0
fetchStart number 組件準備好使用 HTTP 請求抓取資源的時間,這發(fā)生在檢查本地緩存之前
domainLookupStart number DNS 域名查詢開始的時間,如果使用了本地緩存(即無 DNS 查詢)或持久連接,則與 fetchStart 值相等
domainLookupEnd number DNS 域名查詢完成的時間,如果使用了本地緩存(即無 DNS 查詢)或持久連接,則與 fetchStart 值相等
connectStart number HTTP(TCP) 開始建立連接的時間,如果是持久連接,則與 fetchStart 值相等。注意如果在傳輸層發(fā)生了錯誤且重新建立連接,則這里顯示的是新建立的連接開始的時間
connectEnd number HTTP(TCP) 完成建立連接的時間(完成握手),如果是持久連接,則與 fetchStart 值相等。注意如果在傳輸層發(fā)生了錯誤且重新建立連接,則這里顯示的是新建立的連接完成的時間。注意這里握手結束,包括安全連接建立完成、SOCKS 授權通過
SSLconnectionStart number SSL建立連接的時間,如果不是安全連接,則值為 0
SSLconnectionEnd number SSL建立完成的時間,如果不是安全連接,則值為 0
requestStart number HTTP請求讀取真實文檔開始的時間(完成建立連接),包括從本地讀取緩存。連接錯誤重連時,這里顯示的也是新建立連接的時間
requestEnd number HTTP請求讀取真實文檔結束的時間
responseStart number HTTP 開始接收響應的時間(獲取到第一個字節(jié)),包括從本地讀取緩存
responseEnd number HTTP 響應全部接收完成的時間(獲取到最后一個字節(jié)),包括從本地讀取緩存
rtt number 當次請求連接過程中實時 rtt
estimate_nettype number 評估的網(wǎng)絡狀態(tài) unknown, offline, slow 2g, 2g, 3g, 4g, last/0, 1, 2, 3, 4, 5, 6
httpRttEstimate number 協(xié)議層根據(jù)多個請求評估當前網(wǎng)絡的 rtt(僅供參考)
transportRttEstimate number 傳輸層根據(jù)多個請求評估的當前網(wǎng)絡的 rtt(僅供參考)
downstreamThroughputKbpsEstimate number 評估當前網(wǎng)絡下載的kbps
throughputKbps number 當前網(wǎng)絡的實際下載kbps
peerIP string 當前請求的IP
port number 當前請求的端口
socketReused boolean 是否復用連接
sendBytesCount number 發(fā)送的字節(jié)數(shù)
receivedBytedCount number 收到字節(jié)數(shù)
protocol string 使用協(xié)議類型,有效值:http1.1, h2, quic, unknown
object.fail 回調函數(shù)
參數(shù)
Object err
屬性 類型 說明 最低版本
errMsg String 錯誤信息
errno Number errno 錯誤碼,錯誤碼的詳細說明參考 Errno錯誤碼 2.24.0
返回值
RequestTask
請求任務對象
data 參數(shù)說明
最終發(fā)送給服務器的數(shù)據(jù)是 String 類型,如果傳入的 data 不是 String 類型,會被轉換成 String 。轉換規(guī)則如下:
對于 GET 方法的數(shù)據(jù),會將數(shù)據(jù)轉換成 query string(encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...)
對于 POST 方法且 header['content-type'] 為 application/json 的數(shù)據(jù),會對數(shù)據(jù)進行 JSON 序列化
對于 POST 方法且 header['content-type'] 為 application/x-www-form-urlencoded 的數(shù)據(jù),會將數(shù)據(jù)轉換成 query string (encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...)
示例代碼
wx.request({
url: 'example.php', //僅為示例,并非真實的接口地址
data: {
x: '',
y: ''
},
header: {
'content-type': 'application/json' // 默認值
},
success (res) {
console.log(res.data)
}
})
作者:大學生新聞網(wǎng) 來源:大學生新聞網(wǎng)