outlook郵箱 使用 windows graph接口 發(fā)送郵件

背景:因?yàn)槲④浗?用戶名密碼發(fā)送郵件,所以之前通過(guò)用戶名密碼發(fā)送郵件的功能 需要升級(jí)。

調(diào)研:調(diào)研發(fā)現(xiàn),使用graph的接口實(shí)現(xiàn)起來(lái)更自然,只需要實(shí)現(xiàn)兩個(gè)接口即可

實(shí)現(xiàn)流程:

1.調(diào)用 獲取token的接口:

1.1.請(qǐng)求地址https://login.microsoftonline.com/注冊(cè)的Azure賬戶的域/oauth2/v2.0/token

1.2.請(qǐng)求方式POST

1.3. Body:

grant_type 傳入固定值:client_credentials

client_id 傳入注冊(cè)的企業(yè)應(yīng)用程序的“應(yīng)用程序ID”

scope 傳入固定值:https://graph.microsoft.com/.default

client_secret 傳入 新建企業(yè)應(yīng)用程序后 可以一次性獲取到的 登錄秘鑰【這里也可以使用證書】

獲取token接口


2. 利用獲取的token,可以用任何 上面這個(gè)應(yīng)用下面的任意用戶的郵箱發(fā)送郵件

2.1.請(qǐng)求地址:https://graph.microsoft.com/v1.0/users/郵件發(fā)送人的郵箱 or Azure用戶的id/sendmail

2.2.請(qǐng)求方式POST

2.3.HEADER:

Authorization :接口1獲取到的token

Content-Type:application/json

Host:graph.microsoft.com


2.4.Body:

{

??"message":?{

????"subject":?"郵件主題",

????"body":?{

??????"contentType":?"Text",

??????"content":?"這里是郵件內(nèi)容"

????},

????"toRecipients":?[

??????{

????????"emailAddress":?{

??????????"address":?"收件人郵箱"

????????}

??????}

????],

????"ccRecipients":?[

??????{

????????"emailAddress":?{

??????????"address":?"抄送郵箱"

????????}

??????}

????]

??},

??"saveToSentItems":?"true"

}


2.5. 注意:sendemail 接口調(diào)用成功了,返回的響應(yīng)碼不是200 而是201?

sendemail


PS: 如果你的Azure賬戶 沒有購(gòu)買,只是個(gè)測(cè)試用戶。那么郵件是發(fā)不出去的。

接口調(diào)用成功后,郵箱會(huì)收到報(bào)錯(cuò)郵件:

Your message wasn't delivered because the recipient's email provider rejected it.

Remote Server returned '550 5.7.708 Service unavailable. Access denied, traffic not accepted from this IP. For more information please go to http://go.microsoft.com/fwlink/?LinkId=526653 AS(7230) [CH2PR14MB3959.namprd14.prod.outlook.com]'

報(bào)錯(cuò)郵件示例
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容