最近在做一个钉钉二次开发的项目,需要一个打卡定位功能,在此记录一下实现过程。
首先有两点需要注意的是:
1.这个系列的接口只能在钉钉app中使用。2.调用这些接口需要JSAPI鉴权。
钉钉开放平台上获取JSAPI鉴权的例子:
![](https://img.haomeiwen.com/i13592004/ab29fa9c085c8fc1.png)
前台需要引入 <script src="https://g.alicdn.com/dingding/dingtalk-jsapi/2.3.0/dingtalk.open.js"></script>
![](https://img.haomeiwen.com/i13592004/2f65388b8d12395c.png)
请求后台获取必要的参数
以下是后台:
![](https://img.haomeiwen.com/i13592004/41448491f94f1f9d.png)
appId、agentId(企业唯一标识)在开发者平台中可以得到,timeStamp时间戳通过方法获得,nonceStr自己随便定义一个字符串。
下面来看一个数字签名sinagure如何获取:
![](https://img.haomeiwen.com/i13592004/9724c4cf233ec63e.png)
获取ticket:
(1)首先要拿到token
![](https://img.haomeiwen.com/i13592004/720e1eacc0ffd3e5.png)
URL_GET_TOKKEN = "https://oapi.dingtalk.com/gettoken"
APP_KEY:开发者后台->企业自建应用->选择您创建的E应用->查看->AppKey
APP_SECRET:开发者后台->企业自建应用->选择您创建的E应用->查看->AppSecret
![](https://img.haomeiwen.com/i13592004/2166f473da93c93c.png)
将这些参数传给上面的计算签名信息代码就可以得到签名了,其中url就是调用接口的页面的url。
![](https://img.haomeiwen.com/i12358798/578e377e7610086a.png)
初始化页面时执行ddConfig获取权限后,就可以调用其他接口了。
网友评论