微信小程序  http请求封装详解及实例代码

微信小程序  http请求封装

示例代码

wx.request({

url: 'test.php', //仅为示例,并非真实的接口地址

data: {

x: '' ,

y: ''

},

method:'POST',

header: {

'content-type': 'application/json'

},

success: function(res) {

console.log(res.data)

},

fail: function( res ) {

fail( res );

}

})

以上为小程序的基本http请求代码,实际代码中如果每次这样来写是比较繁琐的,那我们就来做一下封装。

那代码中我们比较关注什么?

1.请求的参数,访问的接口

2.GET/POST...请求方式

3.请求参数统一处理(比如:加密、设置公共参数...)

4.请求成功返回的数据(比如:解密、抽离逻辑层数据)

5.请求失败反馈

我们不关注什么?

1.请求url(一般固定的配置在某个地方)

2.根据不同的接口规则做不同的请求参数(比如:参数加密等)

...

让我们代码实操

network.js

var API_URL = 'http://localhost/loverule/api/api.php'

var requestHandler = {

params:{},

success: function(res){

// success

},

fail: function() {

// fail

},

}

//GET请求

function GET(requestHandler) {

request('GET',requestHandler)

}

//POST请求

function POST(requestHandler) {

request('POST',requestHandler)

}

function request(method,requestHandler) {

//注意:可以对params加密等处理

var params = requestHandler.params;

wx.request({

url: API_URL,

data: params,

method: method, // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT

// header: {}, // 设置请求的 header

success: function(res){

//注意:可以对参数解密等处理

requestHandler.success(res)

},

fail: function() {

requestHandler.fail()

},

complete: function() {

// complete

}

})

}

module.exports = {

GET: GET,

POST: POST

}

1.页面中调用(以GET请求为例)

//导入js

var network = require("../../utils/network.js")

//写入参数

var params = new Object()

params.api_name = "api_user_login"

params.account = "hanqing"

params.password = "123456"

//发起请求

network.GET(

{

params: params,

success: function (res) {

console.log(res)

//拿到解密后的数据,进行代码逻辑

},

fail: function () {

//失败后的逻辑

},

})

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

以上是 微信小程序  http请求封装详解及实例代码 的全部内容, 来源链接: utcz.com/z/349882.html

回到顶部