问题标签 [microsoft-graph-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
852 浏览

rest - office365 microsoft graph 全文搜索

Microsoft Graph 在 v1.0 或 beta 中是否提供任何全文搜索功能?

具体来说,我想搜索电子邮件正文内容。我尝试了以下请求,只是为了测试 API 的不同部分:

带有响应消息

并要求

带有响应消息

最后一个回复提到了一些搜索功能,但我在文档中找不到这个。

0 投票
2 回答
1352 浏览

angularjs - 使用 Sharepoint Online 登录访问 Office Graph api?

去年,我们一直在自定义母版页中运行 Angular 应用程序,使用 Sharepoint REST api 来检索用户属性、列表中的数据等,运行良好。由于应用程序托管在 Sharepoint Online 上,因此访问该页面需要登录,从而使请求摘要可用,因此不需要进一步的身份验证。

但是,现在我们想开始使用 Microsoft Graph API 中的一些功能。据我所知,这需要针对 Azure Active Directory 的 OAuth2 身份验证,其中包括重定向到 AAD 登录页面。

这是否意味着我必须:

1) 通过组织(标准 Microsoft)登录页面登录以访问 Sharepoint Online 站点。2) 重定向到 Azure AD 登录页面并再次返回?

或者我可以利用用户在登录 Sharepoint Online 时已经进行的登录吗?

抱歉,如果这个问题有点模糊,我们对此还是很陌生。

0 投票
1 回答
421 浏览

c# - 使用 OutlookServicesClient 时出现 SystemOutOfMemoryException

我最近开始使用新的 Outlook/Office 365 Rest API,并在身份验证(新的 v2.0 应用程序模型)、范围、使用OutlookServicesClient和编写更好的(linq-) 查询方面获得了一些很大的帮助。

不幸的是,一些用户报告了一些内存问题,导致以下结果System.OutOfMemoryException

我的查询(获取某个日期收到的电子邮件数量)如下所示:

我没有找到处理源的方法,也认为没有必要,因为只有局部变量。然后将 -list 的结果emails存储在数据库中。在我添加此功能之前,我的工具的内存使用量是稳定的,现在以每小时 10Mb 左右的速度增长(取决于某人拥有多少电子邮件)。

任何建议都非常感谢!

0 投票
1 回答
263 浏览

office365 - office365 microsoft graph 群组对话

我是图形 API 的新手。我正在尝试使用https://graph.microsoft.com/v1.0/groups/id/conversations访问群组对话?但结果显示“SMTP 地址没有与之关联的邮箱”。所有具有对话的群组是访问群组对话的任何其他方式..?

0 投票
2 回答
1840 浏览

office365 - 无法通过 Graph API 获取我所属的 Office 365 组

尝试获取用户所属的所有 Office 365 组。
我在 Azure 上注册了一个“本机客户端应用程序”,并且只选择了一个权限:“Microsoft Graph”范围下的“读取所有组”。

问题:来自其他租户的用户收到“由于缺乏权限,呼叫主体无法同意”。错误,并且没有进入同意步骤。

如果用户具有管理员权限,或者如果我在第二个租户上注册了另一个应用程序,我能够通过同意步骤并获得组列表。

顺便说一句,注册“Web 应用程序”并在“多租户”选项中选择“是”也无济于事。

有人知道“Group.Read.All”是否需要管理员同意吗?根据this它没有。
我还尝试运行此处在“获取我所属的统一组”下https://graph.microsoft.com/v1.0/me/memberOf/$/microsoft.graph.group?$filter=groupTypes/any(a:a%20eq%20'unified')提到的此查询,但没有运气。

另一个问题,有没有办法将 Native 应用程序配置为多租户应用程序?

0 投票
1 回答
1108 浏览

powershell - 通过 Graph 更新 AzureAD/O365 UPN

我正在尝试通过 MS Graph 利用 Powershell 中的 .Net ADAL 库来更新联合域中 Azure AD 用户(使用 Azure AD Connect 加载)的 UPN。我有理由确定我已在 Azure 和 PS 中正确配置了所有内容,因为如果我发出更新 usageLocation 属性的命令,它会起作用(为简洁起见已剪辑):

但是,如果我尝试将 UPN 更新到非联合域(所以我不会与http://blogs.perficient.com/microsoft/2013/03/changeing-upn-for-office中描述的问题发生冲突-365-account-between-two-sso-domains/),我得到一个内部服务器错误(500):

我尝试了许多不同的变体,包括检索 Azure AD GUID 并在 PATCH 命令中使用它而不是 UPN,以及使用较旧的 Azure AD Graph(返回相同的 500 错误)。我可以使用 O365 Powershell 命令进行更改:

但我似乎无法通过 MS Graph 使其工作。graph 的文档暗示 UPN 可以像其他属性一样更新(例如,cv http://graph.microsoft.io/en-us/docs/api-reference/v1.0/api/user_update)。我想知道是否因为 UPN 是一个密钥,也许这会使更新不起作用?我也不认为这是权限问题,通常会抛出“权限不足,无法完成操作”。这不是我所看到的。

谢谢!

UPDATE1:这是我今天早上重新尝试时可以从错误对象中找出的所有内容:

0 投票
1 回答
737 浏览

ruby-on-rails - 如何使用 Office365 REST API 将 OneDrive 文件下载到 Ruby 变量中?

我正在构建一个 Ruby on Rails 应用程序,我想集成一些 Office365 功能。

例如:我想从 OneDrive 下载文件,然后将其附加到电子邮件中,以便通过 Outlook REST API 发送。

我发现这个获取项目内容 OneDrive REST API但我不明白如何使用它。

我知道我必须使用 Rails 发送一个 GET 请求(格式如 msdn.microsoft.com 中所述),然后它会为我提供一个“预先验证的下载 URL ”来下载文件。

然后我将不得不发送第二个 GET 请求,其中包含一个预先验证的下载 URL以开始下载,但我不明白如何处理响应以便将文件保存到变量中。

如何将文件检索到我的 Ruby on Rails 应用程序的变量中,以便我可以将其附加到带有 Outlook REST API 的电子邮件中,以便从我自己的 Rail 控制器发送它?

此外,这个工作流程在带宽和处理方面确实没有优化(3 个 REST API 请求 + 1 个下载 + 1 个上传),它会起作用。

但是,如果它存在一个 REST API 可以直接将 OneDrive 文件附加到电子邮件以发送它,那将大大减轻我的生活,节省能源,从 Microsoft 数据中心节省资金,并保护地球生态

任何教程、示例或更多解释性文档将不胜感激。

--- 编辑 --- 不希望添加电子邮件链接,因为电子邮件可能必须发送给 Office365 用户以外的人,并且公共链接是机密文档的安全问题。

欢迎任何帮助。

0 投票
1 回答
299 浏览

azure-active-directory - 查询来自其他 Azure AD 的用户的 Microsoft Graph API

我有一个 Azure AD,其中有一些来自另一个 Azure AD 的用户。我使用 OpenID Connect Owin 中间件从我的 MVC Web 应用程序验证这些用户没有问题,但是当尝试通过在 Microsoft Graph API 中查询https://graph.microsoft.com/v1.0/me来获取用户配置文件时,我得到NotFound 结果。错误消息中的用户名(电子邮件)带有下划线,而不是 @ 符号。

在原始 AD 中获取用户的用户配置文件就可以了。

有任何想法吗?这是一个已知问题吗?有办法解决吗?

0 投票
1 回答
150 浏览

microsoft-graph-api - GET 到 microsoft.graph.getMemberGroups 返回带有 TODO 消息的错误

当做一个:

它正确地返回一个错误,因为它应该是一个 POST。但是,它返回的错误中包含“TODO”消息。诡异的。

这是预期的行为吗?

0 投票
1 回答
1407 浏览

oauth - 使用 Microsoft OAuth2 针对 Yammer API 进行身份验证

我最近实现了 Microsoft OAuth2 来从 Graph API(以及更多)检索数据。现在我不想与 Yammer API 中的一些社交功能集成,但我找不到任何信息是否可行。

从 Yammer Embed 判断时,我似乎没有必要强迫用户针对两个不同的 OAuth 端点进行身份验证,Microsoft SSO 也足以在(Microsoft 拥有的!)Yammer 中进行身份验证。

也许我只是对 OAuth 了解不够,但这确实意味着我必须首先针对 MS OAuth2 进行身份验证,然后再对 Yammer OAuth2 进行身份验证。

编辑:就在我发布这个之后,我发现了我之前错过的“Yammer impersonation”页面:https ://developer.yammer.com/docs/impersonation 细节很短,这是避免用户的可行方法吗是否必须主动登录 Yammer?

顺便说一句,我们有一项付费的 Microsoft 服务,包括大多数应用程序。

进一步编辑:我主要想使用 API 来获取一些关于帖子等的点赞数的统计信息,目前还没有任何个人信息。