web免登钉钉微应用
1.首先引用两个钉钉的js
<script type="text/javascript" src="http://g.alicdn.com/dingding/open-develop/1.6.9/dingtalk.js"></script>
<script type="text/javascript" src="http://g.alicdn.com/dingding/dingtalk-pc-api/2.3.1/index.js"></script>
1
2
2.判断pc端还是移动端的钉钉(此例子是Vue操作,React类似)
mounted(){
if(DingTalkPC.ua.isDesktop&&DingTalkPC.ua.isInDingTalk){//PC端钉钉执行此方法
let surl=window.location.href;
$.ajax({
method: 'post',
url: author+'config',
data:{
key:corpId,
url:surl
},
success: function(data) {
dd.config({
agentId:data.agentid, // 必填,微应用ID
corpId: data.corpid,//必填,企业ID
timeStamp: data.timestamp, // 必填,生成签名的时间戳
nonceStr: data.noncestr, // 必填,生成签名的随机串
signature: data.sign, // 必填,签名
type:0, //选填,0表示微应用的jsapi,1表示服务窗的jsapi,不填默认为0。该参数从dingtalk.js的0.8.3版本开始支持
jsApiList : [ 'runtime.permission.requestAuthCode' ] // 必填,需要使用的jsapi列表,注意:不要带dd。
});
DingTalkPC.runtime.permission.requestAuthCode({
corpId: data.corpid, //企业ID
onSuccess: function(result) {
this.CodeFunc(result.code)
//alert(JSON.stringify(result))
/*{
code: 'hYLK98jkf0m' //string authCode
}*/
}.bind(this),
onFail : function(err) {}
})
}.bind(this),
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus + ' ' + errorThrown);
}
});
}
dd.ready(function(){//移动端钉钉执行此方法
dd.runtime.permission.requestAuthCode({
corpId:corpId,
onSuccess: function(result) {
this.CodeFunc(result.code)
/*{
code: 'hYLK98jkf0m' //string authCode
}*/
}.bind(this),
onFail : function(err) {
alert(err)
}
});
}.bind(this))
)
3根据获取到的Code来获取userid
CodeFunc(e){
$.ajax({
method: 'post',
url: author+'userinfo',
data:{
code:e,
},
success: function(data) {
alert(data)
alert(JSON.parse(data).userid)
}.bind(this),
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus + ' ' + errorThrown);
}
});
}
4.最后根据userid来进行登录操作
————————————————
版权声明:本文为CSDN博主「玉林路扛把子」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_29819449/article/details/80328181
web免登钉钉微应用相关推荐
- php钉钉企业微应用免登demo,钉钉微应用免登实现
用户在使用软件应用的过程中,第一步往往都是登录.输入账号密码,进行登录,登录的目的就是让应用识别张三是张三,而不是李四.相对应,如果能够不用输账号密码,应用就知道你是你,就叫做免登. 免登的源头还是需 ...
- 钉钉扫码免登-钉钉应用内免登的实现(附仓库及Demo)
新版钉钉扫码免登及钉钉应用内免登的一次实现 (附仓库及Demo) Vue2, JDK1.8, SpringBoot2.x.x, 钉钉模块, 钉钉模块Demo, 钉钉开放平台 目录 新版钉钉扫码免登及钉 ...
- 钉钉企业内部应用获取登录用户信息
1.创建企业内部应用 首先在钉钉开放平台注册企业内部应用. 选择[企业内部开发] 创建H5微应用 填写相关信息 企业内部H5微应用创建完成 2.接口开发前准备 开发前必读 了解不同应用所能支持的能力 ...
- DingTalk钉钉机器人单聊互动卡片消息的一次实现(附仓库)
DingTalk钉钉机器人单聊互动卡片消息的一次实现 dingtalk-module迭代记录 07-08-22: 完善一下一些定义的接口, 方便理解 07-26-22: 看了下文档, 钉钉更新了两种互 ...
- 钉钉开放平台-小程序开发实战(钉钉小程序客户端)
文章目录 钉钉小程序客户端 关于钉钉开放平台 一.小程序基础 1. 基本概念 2. 小程序页面基础 页面运行机制 页面生命周期 页面栈 页面跳转 怎么使用小程序的data-*属性? 3. 小程序常用布 ...
- 钉钉开发第三方H5微应用入门详细教程[ISV][免登流程][授权码][HTTP回调推送][识别用户身份][获取用户信息]...
转载请注明原文地址:https://www.cnblogs.com/applerosa/p/11509512.html (by lnexin@aliyun.com 世间草木) 此教程注意点: 适用于第 ...
- 钉钉微应用怎么进入_钉钉微应用开发免登流程
公司将办公协同基本上都搬到钉钉线上来了,偶有部门个性的功能,钉钉没有合适的应用可以解决,所以只能自己开发系统解决.钉钉企业内部应用分E应用和微应用,E应用说白了就是小程序,微应用是H5页面.如果公司内 ...
- 钉钉H5微应用开发免登以及接口调试
钉钉H5微应用开发以及接口调试 企业内部应用免登 https://open.dingtalk.com/document/orgapp-server/enterprise-internal-applic ...
- (详解)钉钉接口,PC端微应用,免登录及获取当前用户信息
1.用了两天的时间,一直在研究微应用的,免登录及获取用户信息这一块. 但是钉钉官网写的太繁杂了,看了一天,硬是没看明白,最后,硬着头皮,一点点查资料,借鉴别人的代码,终于 研究 出来了,为了防止 年轻 ...
最新文章
- OpenCV中图像形态学操作
- 多迪人事主管揭秘:面试官是如何面试Web前端求职者?
- 第三章 改进神经网络的学习方式(中下)
- MyBatis 架构分层与模块划分-接口层
- Android Notification实现推送消息过程中接受到消息端有声音及震动及亮屏提示
- mongodb添加多条数据_Python 数据库骚操作 -- MongoDB
- 求两个数的最小公约数和最小公倍数
- 解决方案架构师我需要懂代码吗_架构师不写代码,能行吗?
- 进一步的去了解正则[一]
- win10系统进入监护人模式的方法
- 壁纸控:小清新桌面壁纸
- 用Python中的tkinter模块作图
- 三角网导线平差实例_三角网闭合导线计算()
- 【智能优化算法-蝙蝠算法】基于混合粒子群和蝙蝠算法求解单目标优化问题附matlab代码
- FIT2CLOUD飞致云完成C轮和C+轮融资,持续引领中国多云管理市场
- 尚学堂马士兵Oracle教程 笔记
- win10怎么更新显卡驱动_荒野大镖客2优化:NVIDIA更新GeForce 441.41显卡驱动
- 工作感想——离开公司
- NETCore2.2/3.0+使用带有权限验证的Swagger
- 4.18、TCP滑动窗口
热门文章
- 戏说领域驱动设计(十二)——服务
- Spring 发生 has not been refreshed yet 异常
- 软件工程师的核心竞争力是什么-笔记
- Linux Shell find命令只输出文件名字,不携带路径
- c语言指针一步错步步错,一步错步步错经典句子
- GitHub SSH设置与Permission denied问题解决方法
- Item 5:Know what functions C++ silently writes and calls
- 怎么样关闭计算机的操作音,电脑报警音怎么关闭
- redis集群介绍与搭建
- 捕获了一只发生概率小于万分之一的Bug