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