Eric.Liang 发表于 2020-7-21 11:40:37

帮你打开活字格更神奇的功能:八十六,钉钉集成(扫码定位接口实现)

本帖最后由 Lay.Li 于 2023-4-25 14:24 编辑

前两节课,我们针对企业微信和微信公众号的集成进行了讲解,大家有没有感到收获满满呢?
帮你打开活字格更神奇的功能:八十四,企业微信集成(扫码定位接口实现)
https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=78634&fromuid=51381
(出处: 葡萄城产品技术社区)

帮你打开活字格更神奇的功能:八十五,微信公众号集成(扫码定位接口实现)
https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=78639&fromuid=51381
(出处: 葡萄城产品技术社区)


本节课,我们来讲一下和微信并驾齐驱的另一架马车的集成,钉钉

其实这几大厂商的做法和逻辑都是一样的,我们先一起来看下钉钉的文档
https://ding-doc.dingtalk.com/doc#/bgb96b/ok9au2
与企业微信类似,包括了服务端API和前端API


1.和企业微信,微信一致,在JSAPI鉴权时,通过获取access_token和ticket来拿到对应的signature


2.获取到的accsee_token,ticket和过期时间需要缓存到本地,过期之后再调用,节省资源
所以在本地,创建一个DingTalkConfig的数据表,包括appkey,appsecret,agentid,corpid,token,token_due_time,ticket,ticket_due_time字段






3.钉钉和企业微信类似,调用JSAPI需要一定的准备工作

在JSAPI鉴权时,通过获取access_token和ticket来拿到对应的signature


引入JS
注意:在引用JS链接时,如果你的应用是http应用,引用http即可,如果是https应用,引用https cdn链接

引入自定义WebAPI
(解压附件中的DingTalkAPI.zip 这个压缩文件,上传 DingTalkApi\DingTalkApi\bin\Debug 路径下的 DingTalkJSSDK.dll)

将鉴权代码(见附件)放在自定义JavaScript/Css中,这样当页面加载时就可以进行鉴权了

需要在代码里的jsApiList处,把该应用中所有要鉴权的jsapi都加上:

注意:有些api的调用需要添加相关接口权限哟,比如调用通讯录相关接口前,需要先添加通讯录接口权限

4.JSAPI鉴权后,就可以直接调用JSAPI进行操作了



这样,就完成了一系列钉钉JSAPI的接口调用

效果如下:



相同的,当你把前期的JSAPI鉴权完成后,JSAPI的接口都是可以调用的
注意:在鉴权的时候把所有调用的需要鉴权的API接口鉴权了哟


工程文件见附件

钉钉鉴权的js代码

http://img.soogif.com/dvCKxrbrPtTPrpgKjUJdtLW1no9OzGVE.jpeg_s400x0







Eric.Liang 发表于 2020-12-2 13:38:26

6.0 update 1 版本代码见附件


页: [1]
查看完整版本: 帮你打开活字格更神奇的功能:八十六,钉钉集成(扫码定位接口实现)