阿里云号码认证服务

138 阅读1分钟

效果图:

image.png

阿里云官方参考文档: help.aliyun.com/product/750…

第一步:登录阿里云控制台开通号码认证服务

image.png

image.png

第二步:添加认证方案:

image.png

方案添加成功之后,复制对应安卓和iOS的密钥,安卓端和iOS端需要用。

image.png

第三步:获取阿里云账号的AccessKey ID和secret留待备用。

image.png

image.png

第四步:访问参考文档: help.aliyun.com/document_de…

image.png

流程图:

b3efdb8b42874b0d95009b0b616e707c.png

下面我们着重讲解几个接口:

1、Login.getBindMobile

参数:mobileid

作用:通过手机设备号获取数据库中绑定的手机号

2、API GetMobile

参考文档: help.aliyun.com/document_de…

点击这个调试按钮可以跳转到不同sdk的在线调试

image.png

3、API  VerifyMobile

参考文档: help.aliyun.com/document_de…

下面我们以nodejs来讲解下GetMobile和VerifyMobile,使用的是express框架。

const express = require('express');
const app = express();
const port = 81;
const Core = require('@alicloud/pop-core');
const accessKeyId='';  //替换为自己的阿里信息
const accessKeySecret=''; //替换为自己的阿里信息
const apiVersion='2017-05-25';
const endpoint='https://dypnsapi.aliyuncs.com';
const RegionId='cn-hangzhou';

const client = new Core({undefined
  accessKeyId,
  accessKeySecret,
  endpoint,
  apiVersion
});

app.get('/getMobile', (req, res) => {undefined
    const accessToken=req.query.accessToken;

    var params = {undefined
        RegionId,
        accessToken,
    }

    var requestOption = {undefined
      method: 'POST'
    };

    client.request('GetMobile', params, requestOption).then((result) => {undefined
      console.log(JSON.stringify(result));
      res.send(result);
    }, (ex) => {undefined
      console.log(ex);
      res.send(ex);
    })

  //res.send('Hello World!')
})


app.get('/verifyPhoneWithToken', (req, res) => {undefined
    const AccessCode=req.query.accessToken;
    const PhoneNumber=req.query.phoneNumber;

    var params = {undefined
        RegionId,
        AccessCode,
        PhoneNumber,
    }

    var requestOption = {undefined
      method: 'POST'
    };

    client.request('VerifyMobile', params, requestOption).then((result) => {undefined
      console.log(JSON.stringify(result));
      res.send(result);
    }, (ex) => {undefined
      console.log(ex);
      res.send(ex);
    })

  //res.send('Hello World!')
})

app.listen(port, () => {undefined
  console.log(`Example app listening at http://localhost:${port}`)
})

访问方式:

域名:81/getMobile?accessToken=

image.png

域名:81/verifyPhoneWithToken?accessToken=&phoneNumber=

image.png

4、接口:Login.mobileAuthorizeLogin

参数:

phone 手机号码 mobileid 手机设备号 source(来源:android/iOS)

如果手机号初次授权成功后访问该接口登录时,mobileid必传;

如果授权成功登录后 再次登录时,不需要手动授权,那么mobileid就不用传。

登录成功后返回用户的一些基本信息即可。

image.png