调用Microsoft Graph获取联系人时出现404错误求助
Microsoft Graph /me/contacts 404 "ResourceNotFound" 错误解析
你遇到的404错误本质是身份认证通过,但目标资源无法被访问/不存在,结合去掉/contacts后请求正常的情况,核心原因集中在以下几点:
权限缺失
调用/me/contacts需要明确的Delegated权限(Contacts.Read或Contacts.ReadWrite),而/me端点仅需基础的User.Read权限即可访问。如果你的n8n应用仅申请了User.Read权限,未添加联系人相关权限,Microsoft Graph会返回404(属于安全层面的资源隐藏策略,而非直接返回权限错误)。账号配置限制
若你的Microsoft 365账号未启用Outlook联系人功能(例如部分仅用于Teams/SharePoint的专用账号,或未分配Exchange Online邮箱许可证),账号本身不存在联系人存储资源,自然会返回"Resource could not be discovered"。令牌权限验证
可以解析n8n获取的访问令牌(用jwt.ms工具),检查scp字段是否包含Contacts.Read类权限。如果令牌中没有对应权限,需在Azure AD应用注册中添加该权限,并重新授权n8n的Microsoft Graph连接。
另外注意:Microsoft Graph对部分资源的错误返回会刻意使用404,避免泄露资源是否存在的敏感信息,所以优先排查权限和账号配置,而非端点路径问题(你用的v1.0/me/contacts是官方有效端点)。
内容的提问来源于stack exchange,提问作者Gabriele Bracciali
相关产品推荐
相关产品推荐

