当前位置: 首页 > news >正文

罗湖附近公司做网站建设哪家效益快品牌推广外包

罗湖附近公司做网站建设哪家效益快,品牌推广外包,海南网页制作,做网站的数据库的步骤前言 用户登录原来的登录方式如下 1. 手机号验证码 2. 账号密码 运营觉得操作过于复杂, 因此想引入阿里自动登录的逻辑, 也就是号码认证服务,所以才有了这篇问文章 注: 本文只是记录Java端的实现, app端的请自行查询文档实现 官方资料 文档 : 什么是号码认证服务_号码认证服务(…

前言

用户登录原来的登录方式如下

1. 手机号+验证码

2. 账号+密码

运营觉得操作过于复杂, 因此想引入阿里自动登录的逻辑, 也就是号码认证服务,所以才有了这篇问文章

注: 本文只是记录Java端的实现, app端的请自行查询文档实现

官方资料

文档 : 什么是号码认证服务_号码认证服务(PNVS)-阿里云帮助中心

调试地址: GetMobile_云通信号码认证服务_API调试-阿里云OpenAPI开发者门户

错误码地址: 号码认证服务的服务端API返回码_号码认证服务(PNVS)-阿里云帮助中心

系统时序交互图

        其实并不复杂,简单说就是app获取token, 后端解析token,获取真正的手机号,但是经过阿里的加密可能会安全点咯

后端实现

引入依赖

参考来源 : 如何一键登录和本机号码校验GetMobile_号码认证服务(PNVS)-阿里云帮助中心

依赖如下:

<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>dypnsapi20170525</artifactId>
  <version>1.0.6</version>
</dependency>

但是神奇的是没有提供具体的接口文档,或者是我自己没找到

工具类(直接使用)

@Slf4j
public class AliPhoneUtils {//阿里云基础信息private static final String KEY = "你的key";private static final String KEY_SECRET = "你的keySecret";//读取超时时间private static final int READ_TIME_OUT = 1000 * 10;//连接超时时间,防止系统卡死private static final int CONNECT_TIME_OUT = 1000 * 10;//成功标记private static final String SUCCESS = "OK";//只初始化一次即可private static Client client = null;static {try {initClient();} catch (Exception e) {log.error("初始化AliPhoneUtils->client失败");}}//初始化客户端private static void initClient() throws Exception{Config config = new Config();config.setAccessKeyId(KEY);config.setAccessKeySecret(KEY_SECRET);config.setReadTimeout(READ_TIME_OUT);config.setConnectTimeout(CONNECT_TIME_OUT);client = new Client(config);}//构建请求对象private static GetMobileRequest buildMobileRequest(String token) {GetMobileRequest mobileRequest = new GetMobileRequest();mobileRequest.setAccessToken(token);//可要可不要,应该是随机数之类的,但是不传也没影响,可能其他接口能用上这个值吧
//        mobileRequest.setOutId("");return mobileRequest;}public static AliPhoneResult getPhone(String token){GetMobileRequest mobileRequest = buildMobileRequest(token);AliPhoneResult aliPhoneResult = new AliPhoneResult();log.info("getPhone 参数:{}", JsonUtils.Object2Json(mobileRequest));try {GetMobileResponse mobileResponse = client.getMobile(mobileRequest);GetMobileResponseBody body = mobileResponse.getBody();GetMobileResponseBody.GetMobileResponseBodyGetMobileResultDTO mobileResultDTO = body.getMobileResultDTO;//成功逻辑if(Objects.equals(body.getCode(), SUCCESS) && mobileResultDTO != null) {aliPhoneResult.setSuccess(true);aliPhoneResult.setMobile(mobileResponse.getBody().getMobileResultDTO.getMobile());} else {//失败逻辑,可以根据文档确定具体是啥错//https://help.aliyun.com/zh/pnvs/developer-reference/api-return-code?spm=a2c4g.11186623.0.0.54c837fb7QGUJLaliPhoneResult.setErrorMsg(body.getMessage());}log.info("getPhone 返回参数:{}", JsonUtils.Object2Json(mobileResponse));log.info("getPhone 返回body参数:{}", JsonUtils.Object2Json(body));} catch (Exception e) {log.error("getPhone,异常", e);aliPhoneResult.setErrorMsg("请求阿里云失败");}return aliPhoneResult;}public static void main(String[] args) {String token = "token";System.out.println(getPhone(token));}
}

关联类

@Data
public class AliPhoneResult implements Serializable {private static final long serialVersionUID = 1L;//是否发送成功private boolean isSuccess;//错误消息private String errorMsg;//成功时返回的手机号private String mobile;
}

核心参数及获取

AccessKeyId、AccessKeySecret :   就是你账号信息(登录阿里云那个账号) (必须)

READ_TIME_OUT:  读取超时,不要因为阿里云影响你系统,单位为毫秒 (非必须)

CONNECT_TIME_OUT:  连接超时,不要因为阿里云影响你系统,单位毫秒(非必须)

其他的就没啥了,直接看代码,也可以查看以下类能配置的信息

com.aliyun.teaopenapi.models.Config

后续

        后面无非就是拿着手机号去进行注册或者登录,这里每个人业务可能不太一样,就没写了

总结

        这个功能其实并不复杂,只要理解了流程就能搞明白。所以建议大家有空还是可以多画画流程图的。不用想着啥,就当是为了自己,你画一遍下来自然就知道要干啥了

http://www.dinnco.com/news/18291.html

相关文章:

  • 电子商务网站建设专业主修课程3a汽车集团公司网络营销方案
  • wordpress wpdx教程宁波正规优化seo软件
  • 淘宝客网站一般用什么做的搜索引擎优化培训班
  • 办公设备网站推广怎么做淘大象排名查询
  • 现在做个企业网站一般多少钱seo网站seo
  • 手机网站免费制作平台最新国际新闻头条新闻
  • 做网站哪种字体好看专业关键词排名优化软件
  • 做商城网站的企业推广策划方案
  • 温州企业模板建站百度seo排名优化
  • 免费做app的网站有哪些营销手段有哪些方式
  • 招聘网站怎么做线下活动百度广告联盟收益
  • 网站式的公司记录怎么做网络科技公司
  • 网站如何引入流量怎么查询百度收录情况
  • 网站建设优化公司呼和浩特设计师培训班多少钱
  • 乌鲁木齐建设网络优化大师客服
  • 安吉做网站免费seo网站的工具
  • 三沙网站设计公司爱站关键词挖掘old
  • 做外贸 建网站要注意什么重庆网络推广公司
  • 商城网站制作报价债务优化是什么意思
  • 网站外部链接怎么做天津网站排名提升
  • 深圳地质建设网站软件开发公司联系方式
  • 日照网站建设seo免费seo快速排名工具
  • wordpress上传突然提示需要ftp麒麟seo
  • 开源 html5网站模板东莞seo整站优化火速
  • 网站设计武汉品牌营销策划方案案例
  • 做视频类网站需要哪些许可证北京百度推广投诉电话
  • 哪些网站可以做网店常用的seo工具的是有哪些
  • 真人性做爰直播网站品牌推广和营销推广
  • 安徽省高速公路建设指挥部网站网店运营的工作内容
  • 网站优化公司怎么选如何做好品牌宣传