一、要解决的问题:
钉钉微应用开发,应对未来可能的PC端使用场景:PC访问网页,工作台登陆后,通过钉钉服务端接口完成自身业务。
二、开发前准备:
根据官方文档,钉钉微应用PC端开发和移动端开发已经统一,方便我们统一开发,两套使用。
前端调用钉钉API可在页面引入对应js文件:
为什么引入鉴权(dd.config)?——钉钉业务相关JSAPI必须鉴权,手机原生功能可不用鉴权,在dd.ready内执行即可。目前支持的JSAPI功能展示可参见https://wsdebug.dingtalk.com/。
鉴权原理:
1.在你的Web服务器端调用api,传入CorpId和CorpSecret,获取accessToken,即访问令牌。
2.在服务器端调用api,传入accessToken,获取JsApiTicket,即JsApi的访问许可(门票)。
3.按照既定规则,在后台由JsApiTicket、NonceStr、Timestamp、本页面Url生成字符串,计算SHA1消息摘要,即签名Signature。
4.将AgentId、CorpId、Timestamp、NonceStr、Signature等参数传递到前台,在前台调用api,得到authCode,即授权码。
5.根据授权码,在前台或后台调用api,获得userId,进而再根据userId,调用api获取用户详细信息。
补充几点: