OA集成钉钉开发——第五篇——微应用开发

CorpID是企业在钉钉中的标识,每一个企业拥有一个惟一的CorpID;css

CorpSecret是企业每一个应用的凭证密钥。前端

CorpID及CorpSecret能够在钉钉为企业提供的管理后台中找到,由钉钉自动分配。java

根据CorpID和CorpSecret获取accessToken。json

POST请求请在HTTP Header中设置 Content-Type:application/json,不然接口调用失败。后端

java 后台请求:api

ServiceFactory serviceFactory = ServiceFactory.getInstance();
 CorpConnectionService corpConnectionService = serviceFactory.getOpenService(CorpConnectionService.class);
 accToken = corpConnectionService.getCorpToken(Env.CORP_ID, Env.CORP_SECRET);

由于access_token和jsapi_ticket的过时时间都是7200秒,因此能够把accssToken写入文件,能够避免平凡的从阿里的服务中请求。app

 请求到了access_token 以后,url

JsapiService jsapiService = serviceFactory.getOpenService(JsapiService.class);
 JsapiTicket JsapiTicket = jsapiService.getJsapiTicket(accToken, "jsapi");
jsTicket = JsapiTicket.getTicket();

能够拿到ticket,经过ticket( 两小时过时),在后端经过sign(ticket, nonceStr, timeStamp, url)计算前端校验须要使用的签名信息。code

  1. 将:‘url’,‘nonceStr’,‘agentId’,‘timeStamp’,‘corpId’,‘signature’传递到前端页面,在前端HTML5页面使用jsapi提供的dd.config(PC客户端使用DingTalkPC.config)接口进行签名校验。
  2. 在页面引入jsapi:https://g.alicdn.com/ilw/ding/0.9.2/scripts/dingtalk.js
  3. 使用钉钉js-api提供的获取免登受权码接口获取CODE
  4. 经过CODE换取身份
相关文章
相关标签/搜索