当前位置:K88软件开发文章中心编程全书微信小程序 → 文章内容

微信小程序API 发起请求

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-15 14:59:24

由 ?﹏???ζ???﹏﹏? 创建,Carrie 最后一次修改 2016-09-24 wx.request(OBJECT)OBJECT参数说明:参数名类型必填说明urlString是开发者服务器接口地址dataObject、String否请求的参数headerObject否设置请求的 header , header 中不能设置 ReferermethodString否默认为 GET,有效值:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECTdataTypeString否默认为 json。如果设置了 dataType 为 json,则会尝试对响应的数据做一次 JSON.parsesuccessFunction否收到开发者服务成功返回的回调函数,res = {data: '开发者服务器返回的内容'}failFunction否接口调用失败的回调函数completeFunction否接口调用结束的回调函数(调用成功、失败都会执行)success返回参数说明:参数类型说明最低版本dataObject/String/ArrayBuffer开发者服务器返回的数据statusCodeNumber开发者服务器返回的 HTTP 状态码headerObject开发者服务器返回的 HTTP Response Header1.2.0data 数据说明 最终发送给服务器的数据是 String 类型,如果传入的 data 不是 String 类型,会被转换成 String 。转换规则如下:对于 header['content-type'] 为 'application/json' 的数据,会对数据进行 JSON 序列化对于 header['content-type'] 为 'application/x-www-form-urlencoded' 的数据,会将数据转换成 query string (encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...) 示例代码:wx.request({ url: 'test.php', //仅为示例,并非真实的接口地址 data: { x: '' , y: '' }, header:{ "Content-Type":"application/json" }, success: function(res) { console.log(res.data) }})返回值:基础库 1.4.0 开始支持,低版本需做兼容处理返回一个requestTask对象,通过requestTask,可中断请求任务。requestTask 对象的方法列表:方法参数说明最低版本abort 中断请求任务1.4.0示例代码:const requestTask = wx.request({ url: 'test.php', //仅为示例,并非真实的接口地址 data: { x: '' , y: '' }, header: { 'content-type': 'application/json' }, success: function(res) { console.log(res.data) }})requestTask.abort() // 取消请求任务Bug & Tiptip: content-type 默认为 'application/json'bug: 开发者工具0.10.102800版本,header的content-type设置异常;tip: 客户端的 HTTPS TLS 版本为1.2,但Android的部分机型还未支持 TLS 1.2,所以请确保 HTTPS 服务器的 TLS 版本支持1.2及以下版本;tip: 要注意 method 的 value 必须为大写(例如:GET);tip: url 中不能有端口;tip: request 的默认超时时间和最大超时时间都是 60stip: request 的最大并发数是 5tip: 网络请求的 referer 是不可以设置的,格式固定为 https://servicewechat.com/{appid}/{version}/page-frame.html,其中{appid}为小程序的 appid,{version}为小程序的版本号,版本号为 0 表示为开发版。

微信小程序API 发起请求