我在使用自定义连接器从Microsoft Graph中获取所需内容时遇到一些问题。基本上,我想做的是
Email Activity User Detail
报告并将其转换为Power BI报告。
该报告的URL如下所示:
/v1.0/reports/getEmailActivityUserDetail(period='D7')
为了创建此自定义连接器,我一直在使用
MyGraph Connector Sample
因为我不太熟悉Power Query的使用,也不太熟悉Graph API。
我已经创建了连接器,可以连接到API和所有内容,但所有查询都没有返回数据,而是返回一个字节数组,我似乎无法处理它。
从Fiddler跟踪来看,我想要的实际数据正在被提取,但Graph API似乎使用了指向下载的重定向URL,我不确定我的Power Query代码是否正在处理该URL。我认为它可能只是以字符串形式返回重定向URL,而不是返回实际数据。
此外,我的查询没有代码来处理
NextLink
如果超过返回的行数(我想是200?),所以我想,一旦我让它工作起来,它就不会返回完整的数据集。如何最好地处理?
不幸的是,我对Power Query非常陌生(事实上,这是我第一次遇到它),所以我不知道从哪里开始进行必要的更改以获得所需的内容。
如有任何帮助,我们将不胜感激。
这个
Microsoft Graph API - GET Reports in Graph Explorer and Power BI
这个问题涉及到一个类似的问题,尽管这是通过应用程序接口本身实现的,它似乎无法自己获得必要的授权令牌。
编辑:多亏了马克·拉弗勒的建议,我成功地解决了这个问题。
问题确实是我试图使用Odata。馈送作为源。更改行:
source = OData.Feed("https://graph.microsoft.com/v1.0/me/", null, [ ODataVersion = 4, MoreColumns = true ])
收件人:
source = Csv.Document(Web.Contents("https://graph.microsoft.com/v1.0/reports/getEmailActivityUserDetail(period='D7')"))
修复了该问题,并返回了正确的值,没有其他更改。