PowerBI 使用M函数调用Rest Api
前面有介绍过Rest Api的使用,但是应该还是有人不知道如果使用M语言来获取Token,如果还不知道怎么创建应用的,可以去看先前的文章,应用创建完之后,需要用到client_id,如下图
来看一下Postman中运行的效果,可以正常获取到token
方法一
那么接下来就在PowerBI中使用M语言来实现,进入到PQ页面,新建数据源—空查询,body部分只是用&符把刚postman中的参数和值连接起来,
上面body部分很长,阅读起来可能会很麻烦,也可以使用下面的方法,
使用上面两种写法都可以获取token,但还存在一个问题,就是使用了用户名和密码,对于很多公司可能强制3个月或者更短的周期就要换一次密码,所以接下来介绍另外一种方法。
方法二
这里接口和方法一稍有不同是原先common部分替换成了tenantId,然后grant_type换成了client_credentials
另外还用到了secrets,还没有创建的话,需要创建一个。值只在第一次创建时可见,所以创建完记得保存,此外,secrets现在同样有有效期了,不过时间可以设置的长一些,目前最长是两年。
之后代码其实和方法一就类似了
获取了token,就可以传递到其他查询中来用,这里一次查询了多个Api的数据,方法也很简单,使用expand=将四个接口组合起来,这样就可以请求一次就获取4个接口的数据了。
为了代码简单,上面代码并未展开结果,手动把结果展开就好,
至此,我们就可以通过在PQ里写M语言来获取包括工作区、报表名称、数据集、用户的相关信息了。
相关文章
本篇文章来源于微信公众号: PowerBI木小桼