我在从 Microsoft 团队提取频道消息时遇到问题。我有一个 javascript 应用程序,它可以遍历组织中的所有团队,并从所有团队的所有渠道中提取消息数量。它的工作原理很棒,因为它返回了正确数量的消息,问题是当应用程序尝试从没有人在通道中发送消息的通道中获取消息时,会出现带有 ErrorCode 403(禁止)的 HTTP 错误. 即使该应用程序成功,因为它提供了它应该做的事情,但我不能让一个应用程序在每次进行 http 调用时发送 50 条愤怒的红色消息。
我正在使用的电话是以下https://graph.microsoft.com/beta/teams/{teamID}/channels/{channelID}/messages
有谁知道这是否可以解决?如果不是,是否可以检查通道是否为空?如果这不是一个选择;有没有人可以从控制台隐藏那些肮脏的错误消息?
编辑 #1
要调用我使用的 api:
let header = new Headers();
header.append("Authorization", "Bearer " + accessToken);
header.append("Content-Type", "application/json");
fetch("https://graph.microsoft.com/beta/teams/232808c2-d500-47b0-9ead-e238c5e2ab95/channels/19:[email protected]/messages", {method:"GET", headers: header})
编辑 #2
我响应对象似乎是正确的:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#teams('90baabba-1b5e-471c-a163-8a9b4b680de7')/channels('19%3A01c741f599e547f0b9b38296283b7fec%40thread.skype')/messages",
"@odata.count": 0,
"value": []
}
问题是,当我查看 Google Chrome > 开发工具 > 控制台时,提取仍然显示错误:
GET https://graph.microsoft.com/beta/teams/4f460179-4691-42e5-8677-9101dcdb65fe/channels/19:[email protected]/messages 403 (Forbidden)
当我控制台记录错误时,它只显示为:
error: {code: "Forbidden", message: "Forbidden", innerError: {…}}
只允许团队成员阅读消息。管理员可以进行团队管理,即对团队、频道、选项卡等进行 CRUD 操作。但是,他们无法读取消息。这是有意为之,我们没有计划在不久的将来改变这一点
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句