【发布时间】:2021-06-07 07:55:42
【问题描述】:
我正在尝试将 MS Teams API 集成到 Web 应用程序中。 首先,我尝试使用 Postman 的 MS API 来查看工作流程。
在 Azure UI 上,我成功创建了一个应用注册:我有我的 ClientID、TenantID,并且我还创建了 客户端密码.
我从 https://github.com/microsoftgraph/microsoftgraph-postman-collections 下载了 Postman API,我可以检索 App-Only Access 令牌。
我在一个组中创建了两个用户,并将他们登录到 MS Teams 应用程序,他们可以聊天。
我还可以获得用户访问令牌和端点等
工作正常。
我将用户访问令牌作为承载令牌传递给请求。
Events 文件夹中的端点有问题,例如:
它们都给出相同的错误:
{
"error":{
"code":"NoUserFoundWithGivenClaims",
"message":"The user specified by the user-context in the token does not exist.",
"innerError":{
"oAuthEventOperationId":"08e3abc3-3fdf-4d85-849d-7632ac0723d2",
"oAuthEventcV":"CGW24oLIeEW1qoscgMIMTw.1.1",
"errorUrl":"https://aka.ms/autherrors#error-InvalidUser",
"requestId":"8e6cb242-17fe-4a94-8c89-912606578fb3",
"date":"2021-03-09T12:04:27"
}
}
}
我没有发现任何有关此错误的信息。 有人能帮我吗? 谢谢。
【问题讨论】:
-
您是否使用 App only 访问令牌调用 /findRoom 和 /calendar API?
-
嗨@ShivaKeshavVarma 感谢您的回答。不,我称它为传递这些:ClientID、ClientSecret、TenantID、AppAccessToken、UserPassword 和 UserName(当前用户的)、UserAccessToken、UserId、TeamId、SiteId。我应该只传递 App only 访问令牌吗?
-
通过将其放入jwt.ms 来检查您的不记名令牌,并查看您是否具有“scp”声明中所需的权限。
-
你是对的,只传递 API 工作的令牌。但是现在还有另一个问题,带有此错误的 api 响应: { "error": { "code": "MailboxNotEnabledForRESTAPI", "message": "REST API is not yet supported for this mailbox." } }
-
检查您是否为您登录的用户添加了适当的交换许可证。
标签: azure microsoft-graph-api microsoft-graph-teams microsoft-graph-calendar