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
43
44
45
46
47
48
49
50
51
52
| 'use strict';
| exports.main = async (event, context) => {
| // event里包含着客户端提交的参数
| const res = await uniCloud.getPhoneNumber({
| appid: '__UNI__FC8858A', // 替换成自己开通一键登录的应用的DCloud appid
| provider: 'univerify',
| apiKey: 'df2247e74aa8dae4f9f26e7bbd3d2cc5', // 在开发者中心开通服务并获取apiKey
| apiSecret: '6dbc847c9605c8bb5ed8a9afa4e72ceb', // 在开发者中心开通服务并获取apiSecret
| access_token: event.access_token,
| openid: event.openid
| })
| if(!res.success)
| {
| return {
| code:-1,
| msg:'获取手机号失败'
| }
| }
| if(event.op_type=='getmob')
| {//获取手机号
| return {
| code:0,
| mobile:res.phoneNumber
| }
| }
| else
| {//手机号一键登录
| let pushCid='';
| if(event.pushCid)
| {
| pushCid=event.pushCid;
| }
| var apiUrl='http://dfgapp.ushopvip.com/api/user/mobilelogin';
| const apiRes = await uniCloud.httpclient.request(apiUrl, {
| method: 'POST',
| data: {
| mobile: res.phoneNumber,
| captcha:'000',
| ismobouth:true,
| pushCid:pushCid
| },
| contentType: 'json', // 指定以application/json发送data内的数据
| dataType: 'json' // 指定返回值为json格式,自动进行parse
| })
| //console.log(res); // res里包含手机号
| // 执行用户信息入库等操作,正常情况下不要把完整手机号返回给前端
| // 如果数据库在uniCloud上,可以直接入库
| // 如果数据库不在uniCloud上,可以通过 uniCloud.httpclient API,将手机号通过http方式传递给其他服务器的接口,详见:https://uniapp.dcloud.net.cn/uniCloud/cf-functions?id=httpclient
| return apiRes
| }
|
| };
|
|