釘釘接口開發(fā)入門

需求背景:

將一個(gè)A系統(tǒng)接入釘釘平臺(tái)任斋,供該企業(yè)內(nèi)部員工使用等,實(shí)現(xiàn)移動(dòng)化辦公悼泌。
主要需求:

  1. 可以使用釘釘通過掃描二維碼的方式登錄A系統(tǒng)
  2. 可以在A系統(tǒng)中共享釘釘?shù)慕M織架構(gòu)

技術(shù)調(diào)研思路:

第一階段:在釘釘官網(wǎng)查看開發(fā)者文檔

接入場(chǎng)景主要有四種:

第二階段:選擇可行方案

根據(jù)需求砚偶,我們的使用場(chǎng)景為:僅供某個(gè)企業(yè)內(nèi)的成員使用,其他企業(yè)無法使用該應(yīng)用押蚤,所以優(yōu)先選擇企業(yè)內(nèi)部開發(fā)方案。

企業(yè)內(nèi)部開發(fā)

基于釘釘?shù)拈_放能力羹应,自主開發(fā)揽碘,供企業(yè)或組織內(nèi)部使用,以滿足辦公場(chǎng)景中的個(gè)性化需求园匹。該類應(yīng)用無需釘釘團(tuán)隊(duì)審核雳刺。

應(yīng)用類型

可以開發(fā)E應(yīng)用、微應(yīng)用兩種類型的應(yīng)用偎肃。

E應(yīng)用是一種全新的開發(fā)模式煞烫,讓移動(dòng)開發(fā)者通過簡(jiǎn)捷的前端語法寫出Native級(jí)別的性能體驗(yàn),并支持iOS累颂、安卓滞详、等多端部署。E應(yīng)用暫不支持PC端部署紊馏,如果您的應(yīng)用必須要在PC端上使用料饥,可暫時(shí)使用微應(yīng)用開發(fā)方式。
微應(yīng)用是指用H5方式開發(fā)的應(yīng)用朱监。

E應(yīng)用和微應(yīng)用的對(duì)比:

E應(yīng)用 H5微應(yīng)用
加載性能 首次使用略慢岸啡,后續(xù)加載快 受到很多因素影響,優(yōu)化不夠好赫编,容易慢
使用體驗(yàn) 非常順滑巡蘸,接近 Native 容易卡頓
開發(fā)環(huán)境搭建 提供 IDE奋隶,快速創(chuàng)建項(xiàng)目 成本高
調(diào)試 提供 IDE,可以在電腦上調(diào)試大部分功能 在電腦上只能調(diào) UI悦荒,涉及到釘釘?shù)?jsapi唯欣,必須真機(jī)調(diào)試
使用開源 UI 組件 目前不支持 支持
使用 npm 包 支持 支持
模塊化組織代碼 支持 E應(yīng)用 特有的模塊化 使用 vue, React 等框架可以輕松獲得模塊化支持
灰度發(fā)布 釘釘提供 需要自己實(shí)現(xiàn)
CDN E應(yīng)用包默認(rèn)在 CDN 需要開發(fā)者自己購買相關(guān)服務(wù)
開發(fā)個(gè)人應(yīng)用 支持 不支持
應(yīng)用離線化 支持 不支持

由于E應(yīng)用主要針對(duì)手機(jī)平臺(tái),ios 和 android搬味,而且暫不支持在PC端使用境氢。E應(yīng)用比較坑人的地方是必須購買阿里云的服務(wù)器,而且基礎(chǔ)版的價(jià)格是2萬每年碰纬。(果斷放棄F剂摹)

比較并驗(yàn)證可行性之后,最終選擇實(shí)現(xiàn)方案:釘釘微應(yīng)用接入(企業(yè)內(nèi)部開發(fā))

實(shí)現(xiàn)步驟

創(chuàng)建應(yīng)用

  1. 企業(yè)管理員登錄釘釘管理后臺(tái)悦析,選擇導(dǎo)航【工作臺(tái)】寿桨,點(diǎn)擊【自建應(yīng)用】,開始創(chuàng)建自建應(yīng)用她按。
  2. 填寫基礎(chǔ)信息
    填寫應(yīng)用基本信息牛隅。包括應(yīng)用名稱、logo和簡(jiǎn)介等酌泰。選擇企業(yè)內(nèi)部自主開發(fā)。
  3. 開發(fā)模式選擇“開發(fā)應(yīng)用”匕累,應(yīng)用類型選擇“微應(yīng)用”陵刹。
  4. 創(chuàng)建成功過后,會(huì)生成appKey和appSecret欢嘿,可獲取access_token進(jìn)行開發(fā)

開發(fā)應(yīng)用

釘釘開放平臺(tái)提供豐富的API接口衰琐,以便開發(fā)者接入。

釘釘開放平臺(tái)提供了企業(yè)通訊錄管理炼蹦、文件管理羡宙、發(fā)送企業(yè)會(huì)話消息等功能,接口使用可以參考服務(wù)端開發(fā)文檔掐隐。https://open-doc.dingtalk.com/microapp/serverapi2/gh60vz
釘釘開放平臺(tái)提供了微應(yīng)用在釘釘客戶端運(yùn)行的專用容器狗热,并提供一組可以調(diào)用釘釘?shù)谋镜啬芰蜆I(yè)務(wù)能力的JSAPI接口,JSAPI接口用于微應(yīng)用與釘釘功能之間的結(jié)合虑省,接口使用可以參考客戶端開發(fā)文檔匿刮。https://open-doc.dingtalk.com/microapp/dev/welcome-to-lark

掃碼登錄第三方網(wǎng)站

使用釘釘客戶端掃碼并確認(rèn)登錄您的web系統(tǒng),在您的系統(tǒng)內(nèi)獲得正在訪問用戶的釘釘身份探颈,而用戶無需輸入賬戶密碼熟丸。

注: 此功能與企業(yè)自建應(yīng)用/第三方企業(yè)應(yīng)用無關(guān),只能用掃碼登錄打開第三方網(wǎng)站伪节,并且不是釘釘內(nèi)的應(yīng)用免登光羞,此流程只能做到獲取到用戶身份(無手機(jī)號(hào)和企業(yè)相關(guān)信息)绩鸣。

獲取appId及appSecret

點(diǎn)擊進(jìn)入釘釘開發(fā)者平臺(tái) 的頁面,點(diǎn)擊左側(cè)菜單的【移動(dòng)接入應(yīng)用纱兑,然后點(diǎn)擊右上角的【創(chuàng)建掃碼登錄應(yīng)用授權(quán)】全闷,創(chuàng)建用于免登過程中驗(yàn)證身份的appId及appSecret,創(chuàng)建后即可看到appId和appSecret萍启。

構(gòu)造掃碼登錄頁面

  • 第一種方式是直接使用釘釘提供的掃碼登錄頁面
    在企業(yè)Web系統(tǒng)里总珠,用戶點(diǎn)擊使用釘釘掃描登錄,第三方Web系統(tǒng)跳轉(zhuǎn)到如下地址:
https://oapi.dingtalk.com/connect/qrconnect?appid=APPID&response_type=code&scope=snsapi_login&state=STATE&redirect_uri=REDIRECT_URI

url里的參數(shù)需要換成第三方Web系統(tǒng)對(duì)應(yīng)的參數(shù)勘纯。在釘釘用戶掃碼登錄并確認(rèn)后局服,會(huì)302到你指定的redirect_uri,并向url參數(shù)中追加臨時(shí)授權(quán)碼code及state兩個(gè)參數(shù)驳遵。

同步組織架構(gòu)

調(diào)用釘釘提供的相關(guān)接口
用戶管理:https://open-doc.dingtalk.com/microapp/serverapi2/ege851
部門管理:https://open-doc.dingtalk.com/microapp/serverapi2/dubakq
角色管理:https://open-doc.dingtalk.com/microapp/serverapi2/dnu5l1

相關(guān)文檔

開發(fā)前必讀:https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7629140.0.0.6c7e4a978KksTn&treeId=385&articleId=104980&docType=1

企業(yè)內(nèi)部開發(fā)常見問題:https://open-doc.dingtalk.com/microapp/bgb96b/mdg058

開發(fā)企業(yè)內(nèi)部應(yīng)用:https://open-doc.dingtalk.com/microapp/bgb96b/gt5d6a

釘釘微應(yīng)用接入(企業(yè)內(nèi)部開發(fā)):https://blog.csdn.net/Jason847/article/details/75007140/

掃碼登錄第三方網(wǎng)站:https://open-doc.dingtalk.com/microapp/serverapi2/kymkv6

JavaWeb開發(fā)
初步實(shí)現(xiàn)網(wǎng)站應(yīng)用釘釘掃碼登錄:https://blog.csdn.net/baofeidyz/article/details/59059379

第三方網(wǎng)站通過 釘釘 掃描二維碼登錄/免密碼登錄,獲取手機(jī)號(hào)碼竞穷、郵箱等信息:http://www.reibang.com/p/6a61043c79c9

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末唐责,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子瘾带,更是在濱河造成了極大的恐慌鼠哥,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件看政,死亡現(xiàn)場(chǎng)離奇詭異朴恳,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)允蚣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門于颖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人嚷兔,你說我怎么就攤上這事森渐。” “怎么了谴垫?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵章母,是天一觀的道長。 經(jīng)常有香客問我翩剪,道長乳怎,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮蚪缀,結(jié)果婚禮上秫逝,老公的妹妹穿的比我還像新娘。我一直安慰自己询枚,他們只是感情好违帆,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著金蜀,像睡著了一般刷后。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上渊抄,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天尝胆,我揣著相機(jī)與錄音,去河邊找鬼护桦。 笑死含衔,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的二庵。 我是一名探鬼主播贪染,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼催享!你這毒婦竟也來了杭隙?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤睡陪,失蹤者是張志新(化名)和其女友劉穎寺渗,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體兰迫,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年炬称,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了汁果。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡玲躯,死狀恐怖据德,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情跷车,我是刑警寧澤棘利,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站朽缴,受9級(jí)特大地震影響善玫,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜密强,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一茅郎、第九天 我趴在偏房一處隱蔽的房頂上張望蜗元。 院中可真熱鬧,春花似錦系冗、人聲如沸奕扣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽惯豆。三九已至,卻和暖如春奔害,著一層夾襖步出監(jiān)牢的瞬間楷兽,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工舀武, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留拄养,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓银舱,卻偏偏與公主長得像瘪匿,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子寻馏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348