H5应用集成到钉钉,完成免登录
钉钉创建H5应用--->访问H5主页--->获取钉钉用户信息(唯一ID)--->绑定H5应用用户--->H5模拟登录
1.页面获取authcode,用于后台获取钉钉用户信息;
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head lang="zh"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta charset="utf-8" /><meta content="yes" name="apple-mobile-web-app-capable"/><meta content="yes" name="apple-touch-fullscreen"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" /><title>钉钉授权CRM登录</title><script src="https://g.alicdn.com/dingding/dingtalk-jsapi/3.0.12/dingtalk.open.js"></script><script>var corpId = '[[${corpId}]]';//钉钉后台可查到console.log(corpId);dd.runtime.permission.requestAuthCode({corpId: corpId,onSuccess : function(res) {document.getElementById("authCode").value= res.code;document.form1.submit();console.log(res.code)},onFail : function(err) {console.log("fail"+res);}});</script><style>.myButton{background: #3296fb;color: #fff;border:#3296fb;font-size:16px;border-radius:5px;line-height: 20px;letter-spacing:5px;padding:10px 5px;}</style>
</head>
<body>
<form action="checkUser" method="post" name="form1" id="form1" style="margin-top: 30px;text-align: center;"><div style="line-height:50px;vertical-align:middle;padding-top:20px;"><img src="../dingding.png" style="width:100px;"/><img src="../sq.png" style="width:50px;"/><img src="../cloudcc.png" style="width:100px;"/></div><input type="hidden" name="authCode" id="authCode" /><div style="width:100%;clor:#999;font-size:20px;line-height:50px;padding:10px 5px;">您正在操作钉钉授权登录CRM系统会获取您的钉钉用户信息</div><div><input type="submit" value=" 确定授权" class="myButton"/></div>
</form>
</body>
</html>
2.根据authcode获取钉钉用户id
public String getUserId(String code) throws Exception{// URL_GET_USER_INFO https://oapi.dingtalk.com//user/getuserinfolog.info(urlConstant.URL_GET_USER_INFO+"?access_token="+accessToken);//此处crmapi工具类,只使用了其中的get方法。可以自己写String getUserId = crmapi.sendGetRequest(urlConstant.URL_GET_USER_INFO,"access_token="+accessToken+"&code="+code);log.info("使用缓存中的token,userJson:"+getUserId);JSONObject json = JSONObject.fromObject(getUserId);if(json.getString("errcode").equals("40014")){log.info("===请求新token");getUserId = crmapi.sendGetRequest(urlConstant.URL_GET_USER_INFO,"access_token="+this.getToken()+"&code="+code);json = JSONObject.fromObject(getUserId);}String userId = json.getString("userid");return userId;}
3.H5应用内部逻辑
a.用户信息绑定钉钉用户id;
b.模拟登录;
4.下次访问直接通过钉钉用户id在H5系统里查询用户信息,访问系统。
H5应用集成到钉钉,完成免登录相关推荐
- 钉钉小程序免登录授权
钉钉小程序免登录授权 0. 权限申请 1. 安装```JS SDK```插件 2. 应用授权对接 2.1 引入钉钉统一授权套件SDK 2.2 添加onAuthAppBack调用 3. 在小程序需要授权 ...
- 前端Vue项目实现钉钉扫码免登录
从前端实现的原理是引入二维码后,拿到返回页面的code,将code传到服务器获取数据库里的用户信息,匹配进行放行 第一步:在钉钉开发者平台创建一个应用,拿到相对应的appId ,测试时回调地址可以直接 ...
- 「开发者说」多系统集成开发-企业自有系统快速上钉钉
"在2020年初那个疫情卷地百草折,又是胡天飞雪的时候,钉钉就像一夜春风带来的梨花一样带给我们希望和力量,从最初的审批.待办.日程等基础功能的使用,到后面的内部集成开发,办公效率是一步一步提 ...
- 专有钉钉 浙政钉 前端 对接流程(小程序)
主要开发流程 本公司专有钉钉开发平台账号(公司钉钉超管注册 给开发人员权限) 超管按照文档给予开发人员权限 创建项目 下载开发工具 配置专有钉钉开发环境 免登录(用户不用输入账号密码直接登录) 根据业 ...
- NC移动报表H5应用介绍-可以集成钉钉或者企业微信
移动报表H5应用介绍 目录 移动报表H5应用介绍... 1 1产品介绍... 2 1.1前言... 2 1.1.1简介... 2 1.1.2产品特色:... 2 1.2移动报表APP介绍... 2 1 ...
- NC移动报表H5应用介绍可以集成钉钉和企业微信
移动报表H5应用介绍 目录 移动报表H5应用介绍 1 1产品介绍 2 1.1前言 2 1.1.1简介 2 1.1.2产品特色: 2 1.2移动报表APP介绍 2 1.2.1产品适用NC版本 2 2安装 ...
- 浙政钉 扫码 免登集成
Springboot+浙政钉 扫码免登 集成 初次编写博客 有不到之处 请指出 谢谢 应用上架 第一步申请isv入驻 第二步用isv账号添加用户和机构 专有钉下载地址 第三步用isv账号在团队管理授权 ...
- 钉钉H5微应用开发免登以及接口调试
钉钉H5微应用开发以及接口调试 企业内部应用免登 https://open.dingtalk.com/document/orgapp-server/enterprise-internal-applic ...
- 企业内部钉钉H5微应用(免登录)Spring Boot项目实战
文章目录 前言 一.准备工作 1.开发前准备: 2.钉钉微应用的免登流程: 二.开放过程 1.新建企业号 2.创建H5微应用 3.项目编码 三.微应用配置 四.启动项目后即可访问,应用截图 总结 前言 ...
最新文章
- linux mysql 数据目录迁移后不生效_mysql 本地数据目录迁移
- Subversion hooks脚本配置演示及排错
- 嵌入式linux 考试大纲,《嵌入式Linux》课程考试大纲-武汉工程大学学生进
- stm32f103r6最小系统原理图_电气工程师电气系统设计与电气设备的选择
- Xamarin Essentials教程剪贴板Clipboard
- 第六讲:PrintClient工具的使用
- tutte定理证明hall定理_深入浅出|中心极限定理(Central Limit Theorem)及证明
- 对事件循环的一点理解
- 为何数据治理如此重要
- 总结htmlfile:未知的运行时错误
- Android在程序中浏览网页
- 音视频处理之FFmpeg封装格式20180510
- 5月全国程序员工资最新统计,网友:惊呆了!
- 日企抛等离子淘汰论 专家称其不敌中国企业
- 离线强化学习-2重要性采样和Duality介绍(劝退版)
- 新一代云数据库的引领者---AWS
- 2022年最值得阅读的强化学习书籍
- 用户画像打标签之RFM客户价值分析
- 2016 年度开源中国新增开源软件排行榜 TOP 100
- Python 克莱姆法则求解方程组