我一直在努力使用powerbirestapi,但我还没能正确地利用它。我利用了this,我可以注册一个应用程序并获得一个访问令牌,但是我仍然得到401个请求状态。在
我的主要困惑是关于应用程序注册:
1) 我试图从python脚本读写数据。这是本机应用程序还是Web端服务器?在
2)应用程序注册页面上的重定向和主页URL的含义是什么?我当前正在使用本地主机:5000不同/路径。这是问题的根源吗?在
3)我的研究表明,应该有某种登录交互。我没有,这是不是说明有些事情做得不好?在
我的代码如下:import adal
import requests
AUTHORITY_URL = 'https://login.microsoftonline.com/{my_company}.onmicrosoft.com'
RESOURCE = 'https://analysis.windows.net/powerbi/api'
CLIENT_ID = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
CLIENT_SECRET = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
def make_headers(access_token):
return {
'Authorization': "Bearer {}".format(access_token)
}
context = adal.AuthenticationContext(AUTHORITY_URL)
token = context.acquire_token_with_client_credentials(RESOURCE, CLIENT_ID, CLIENT_SECRET)
access_token = token['accessToken']
headers = make_headers(access_token)
url = "https://api.powerbi.com/v1.0/myorg/datasets"
resp = requests.get(url, headers=headers)
正如我上面所说的,这个方法通过对请求的getastatus401响应给我一个访问令牌,并且没有登录提示。
如有任何帮助/指导,我们将不胜感激。在