You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Microsoft Entra ID OAuth2.0认证Outlook IMAP失败求助

无法通过IMAP连接Outlook的问题
  • 已创建具备全部必要权限的Microsoft Entra应用
  • 完成认证流程后成功获取access_token、id_token和refresh_token
  • 微软文档说明access_token应为v1或v2格式的JWT,但实际获取的令牌非该格式却可正常调用API
  • 将令牌转换为SASL XOAUTH2令牌后尝试连接IMAP始终失败(已开启邮箱IMAP权限)
  • 分别使用Ruby(net/imap搭配gmail_xoauth)和Node.js(imap/node-imap)进行尝试,无法定位问题,若问题无法解决计划改用API读取邮件

Ruby代码示例

require 'gmail_xoauth'
require 'net/imap'
imap = Net::IMAP.new('outlook.office365.com', port: 993, ssl: true)
imap.authenticate('XOAUTH2', email, 'MY-TOKEN')

Node.js代码示例

let base64Encoded = Buffer.from([`user=osamainayat@hotmail.com`, `auth=Bearer ${token}`, '', ''].join('\x01'), 'utf-8').toString('base64');
imap = new Imap({xoauth2: base64Encoded, host: 'outlook.office365.com', port: 993, tls: true, debug: console.log});

内容的提问来源于stack exchange,提问作者Osama Inayat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 09:09:51