使用Microsoft Graph API获取Access Token时遇HTTP 404错误求助
一、排查404 Not Found错误
1. 验证租户ID占位符替换
你当前使用的URL包含{{TenantID}}变量,必须确保该变量已替换为实际租户信息:
- 租户ID可以是租户GUID,或者租户域名(如
contoso.onmicrosoft.com) - 手动替换后测试URL:
https://login.microsoftonline.com/你的实际租户ID/oauth2/v2.0/token
2. 核对请求方法与参数
- 请求方法必须为POST,GET请求会直接返回404
- 请求体需选择
x-www-form-urlencoded格式,必填参数:grant_type: 固定值client_credentials(客户端凭证流)client_id: 你的应用注册Client IDclient_secret: 你的应用注册Client Secretscope: 调用Microsoft Graph需填https://graph.microsoft.com/.default
3. 确认应用注册配置
- 应用必须注册在你指定的租户下
- 已添加对应Microsoft Graph应用权限(如
Files.ReadAll),且已完成管理员同意(客户端凭证流必须要求管理员授权)
二、后续获取SharePoint文件的实现步骤
1. 封装令牌获取函数
核心逻辑:
- 构造POST请求到令牌端点,传入上述必填参数
- 解析响应JSON,提取
access_token字段
2. 调用Microsoft Graph获取文件
- 携带令牌请求:在请求头添加
Authorization: Bearer {access_token} - 示例API端点(获取指定文件夹下的文件):
GET https://graph.microsoft.com/v1.0/sites/{site-id}/drive/items/{folder-id}/childrensite-id可使用租户域名+站点名称格式(如contoso.onmicrosoft.com:/sites/TeamSite)- 若需通过路径定位文件夹,可使用端点:
https://graph.microsoft.com/v1.0/sites/{site-id}/drive/root:/Documents/目标文件夹:/children
内容的提问来源于stack exchange,提问作者Angan Sen
相关产品推荐
相关产品推荐

