在微信小程序中存取 Web API

让微信小程序可以访问企业的业务系统是一个小程序的一个基本功能。现在,很多企业业务系统都会提供一些 Web API 供移动应用或第三方访问,微信小程序也可以利用这些已有的 Web API。

wx.request方法

在微信小程序中,访问网络,主要使用 wx.reqest 方法,方法定义如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
wx.request({
url: 'xxx.com/api/todo', //仅为示例,并非真实的接口地址
method: 'POST', // 默认为 GET
data: {
x: '',
y: ''
},
header: {
'content-type': 'application/json' // 默认值
},
success (res) {
console.log(res.data)
},
fail() {

}
})

示例代码

在案例中我们模拟访问一个登录接口,用户在界面输入用户名和密码,然后服务端进行验证。

对应的 wxml 代码如下:

1
2
3
4
5
6
7
<view class="container">
<form bindsubmit='onSubmit'>
<input name="userId" value="{{userId}}" placeholder="please input userId" />
<input name="password" value="{{password}}" placeholder="please input password" />
<button form-type="submit">Submit</button>
</form>
</view>

javascript 代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
const app = getApp()

Page({
data: {
userId: '',
password: ''
},
onLoad: function () {
console.log('onLoad')
},
onSubmit: function(e) {
console.log(e.detail.value.userId + ', ' + e.detail.value.password)

var that = this

this.setData({
userId: e.detail.value.userId,
password: e.detail.value.password
})

wx.request({
url: 'https://xxxx.cn/api/login',
method: 'POST',
data: {
userId: that.data.userId,
password: that.data.password
},
header: {'Content-Type': 'application/json'},
success: function(res) {
console.log('ok: ' + JSON.stringify(res))
if (res.data.succ) {
console.log('login success, token' + res.data.data)
} else {
console.log('login fail: ' + res.data.msg)
}
},
fail: function() {
console.log('fail')
}
})
}
})

本文标题:在微信小程序中存取 Web API

文章作者:晨星

发布时间:2019年08月28日 - 10:08

最后更新:2020年09月16日 - 08:09

原始链接:https://www.mls-tech.info/weapp/weapp-access-rest-api/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。