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換取身份
相關文章
相關標籤/搜索