【转】Microsoft Graph 概述
陳希章 《Office 365開發(fā)入門指南》作者
這個(gè)系列文章?已經(jīng)進(jìn)行到了實(shí)質(zhì)的階段,繼上一篇介紹了如何搭建Office 365開發(fā)環(huán)境之后,我會(huì)通過這篇文章給大家介紹一個(gè)非常重要的概念:Microsoft Graph。它之所以重要,首先是因?yàn)樗俏磥鞳ffice 365對(duì)外的統(tǒng)一接口(甚至可以說是未來微軟的云服務(wù)的對(duì)外統(tǒng)一接口),其次,Microsoft Graph對(duì)于不少Office 365開發(fā)人員來說是一個(gè)需要先跨過的門檻,這個(gè)關(guān)過去了,后續(xù)進(jìn)行針對(duì)性的開發(fā)(Office Add-in,SharePoint Add-in,Office 365 Connector等)才更加得心應(yīng)手。
Microsoft Graph的官方主頁在https://developer.microsoft.com/zh-cn/graph/?在這里也可以找到很多文章。
簡單地說,Microsoft Graph是一套接口。它的名字經(jīng)過了幾次改變最終確定為Microsoft Graph,我想大致上是因?yàn)楫a(chǎn)品組確實(shí)將其定位于日后微軟的云服務(wù)對(duì)外的統(tǒng)一接口層。Graph這個(gè)單詞初看容易讓人誤會(huì),但實(shí)際上學(xué)過算法的同學(xué)應(yīng)該都知道這是指“圖”的意思,而不是圖片。
目前Microsoft Graph包含的實(shí)體主要有用戶,文檔,郵件,消息,日歷,會(huì)議,聯(lián)系人等等,而且每月都有新的功能在加入進(jìn)來或者被改進(jìn)。
目前Microsoft Graph對(duì)外的穩(wěn)定版本是v1 .0,但同時(shí)還有一個(gè)在不斷更新的beta版本。他們的訪問地址略有不同,前者為https: //graph.microsoft.com /v1.0/{resource}?[query_parameters] 后者為?https://graph.microsoft.com/beta/{resource}?[query_parameters]
值得注意的是,前不久加入微軟大家庭的LinkedIn也有一套所謂的LinkedIn Graph,而且在不久的將來應(yīng)該會(huì)與Microsoft Graph有很好的整合,相信會(huì)很有意思。這里有一篇文章對(duì)其進(jìn)行介紹,有興趣可以移步進(jìn)行了解。
Microsoft Graph是一套R(shí)ESTful的接口,所以它的所有接口都是通過標(biāo)準(zhǔn)的http方法(GET, POST, PUT, DELETE)可以直接訪問到, 而且還可以通過改變Url的參數(shù)來進(jìn)行篩選、排序、分頁等操作,它返回的數(shù)據(jù)是標(biāo)準(zhǔn)的JSON格式。這種特性決定了Microsoft Graph是跨開發(fā)平臺(tái)支持的。目前官方提供的Code Sample和SDK就有如下的十種之多,但實(shí)際上,任何能發(fā)起Http請(qǐng)求并且能解析JSON數(shù)據(jù)的開發(fā)平臺(tái)和語言都能調(diào)用Microsoft Graph。
RESTful接口帶來了調(diào)用的便利性,但與此同時(shí)安全的重要性是不言而喻的。Microsoft Graph采用Azure AD作為身份驗(yàn)證的提供方,所有的服務(wù)請(qǐng)求在調(diào)用之前都必須要取得合法的授權(quán)。目前Azure AD支持互聯(lián)網(wǎng)上最流行的OAuth身份驗(yàn)證方式。關(guān)于OAuth,我這里不想詳細(xì)展開,還不太了解的朋友可以移步這里進(jìn)行了解。
這里還需要展開一下講解微軟的身份賬號(hào)系統(tǒng)。在很多企業(yè)內(nèi)部,微軟的AD(Active Directory,活動(dòng)目錄)使用相當(dāng)廣泛,它是企業(yè)資源的身份賬號(hào)系統(tǒng)。由于歷史的原因,微軟在云端的身份賬號(hào)系統(tǒng)(Azure AD),則一直有兩套。一套是所謂的個(gè)人賬號(hào)(也稱為Microsoft Account),就是我們常見的hotmail.com,outlook.com這種,你也可以將你自己的郵箱地址注冊(cè)為Microsoft Account。另外一套就是隨著微軟成功推出Azure和Office 365等公有云服務(wù),給企業(yè)客戶提供的工作賬號(hào)(或?qū)W校賬號(hào)),英文說法是叫Work or School Account。在我們當(dāng)前討論的Microsoft Graph開發(fā)的上下文中,我們將純粹面向工作或?qū)W校賬號(hào)的Azure AD 服務(wù)端點(diǎn)稱為Azure AD 1.0(或者就簡稱為Azure AD), 而將既支持個(gè)人賬號(hào)也支持企業(yè)或?qū)W校賬號(hào)的Azure AD 服務(wù)端點(diǎn)稱為Azure AD 2.0。
那么怎么聲明你的應(yīng)用程序需要訪問哪些Microsoft Graph資源并且得到認(rèn)證呢?答案是,開發(fā)人員需要在Azure AD中對(duì)應(yīng)用程序進(jìn)行注冊(cè),并且申請(qǐng)權(quán)限。
下面這張圖將有助于你理解Microsoft Graph的整體架構(gòu)
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的【转】Microsoft Graph 概述的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 今晚看超级月亮:“超级月亮”为啥这么大?
- 下一篇: 【转】Magento2目录结构