当前位置: 首页 > 知识库问答 >
问题:

调用PowerBi rest api并生成令牌

臧令
2023-03-14

我想调用PowerBIRESTAPI调用从本地/特定存储库上载pbix文件。

>

  • 我应该如何生成承载令牌以供邮递员授权?

    这个rest api调用是否可以用于generateToken?

    此rest调用需要传递什么作为授权令牌?

    myorg是PowerBI帐户名称吗?从哪里可以获取myorg值?

     POST https://api.powerbi.com/v1.0/myorg/GenerateToken
    

    下面是我想通过邮递员调用的几个电话:

    GET https://api.powerbi.com/v1.0/myorg/imports
    GET https://api.powerbi.com/v1.0/myorg/reports/{reportId}
    

    也很少打电话。

    生成令牌的快速解决方案是什么?

  • 共有1个答案

    郦何平
    2023-03-14

    您可以使用此功能请求访问

    需要在azure中创建客户端IDhttps://docs.microsoft.com/en-us/power-bi/developer/embedded/register-app?tabs=customers蔚蓝色的

        application_id= 'None'
        application_secret= 'None'
        user_id= 'None'
        user_password= 'None'
    
        accessToken = None 
        requestHeaders = None 
        tokenExpiry = None 
        accessToken_AD = None 
        requestHeaders_AD = None 
        tokenExpiry_AD = None 
    
         def pbi_auth(application_id,application_secret,user_id,user_password):
            global accessToken
            global requestHeaders
            global tokenExpiry
            data = {
                'grant_type': 'password',
                'scope': 'openid',
                'resource': "https://analysis.windows.net/powerbi/api",
                'client_id': application_id,
                'client_secret': application_secret,
                'username': user_id,
                'password': user_password
            }
            token = requests.post("https://login.microsoftonline.com/common/oauth2/token", data=data)
            assert token.status_code == 200, "Fail to retrieve token: {}".format(token.text)
            #print("Got access token: ")
            #print(token.json())
            accessToken = token.json()['access_token']
        
            requestHeaders= {
                'Content-Type': 'application/json; charset=utf-8',
                'Authorization': "Bearer {}".format(accessToken)
            }
    
        pbi_auth(application_id,application_secret,user_id,user_password)
        reportId= ""
        URI = "https://api.powerbi.com/v1.0/myorg/reports/{}".format(reportId)
        queryResults =  requests.get(URI, headers=requestHeaders)
    
     类似资料:
    • 我的AndroidManifest文件: 谢谢你的帮助

    • 我有两个站点,一个用户登录并管理他们的帐户的站点和一个没有UI的站点,只不过是一个存储和检索内容的API。这两个站点都使用相同的Owin ASP. Net Idreal 2.0设置。UI站点使用cookie的原因很明显,API站点使用承载令牌。我需要能够使用当前用户身份验证从UI站点调用API方法/url。简而言之,我需要在UI站点中生成一个有效的承载令牌,以便在进行Rest API调用时添加到H

    • 我试图生成令牌,该令牌可以用作HTTP头,以验证HDFS WebHDFS URL和Oozie REST API URL。我引用了下面的url以生成协商令牌的以下代码。https://www.ibm.com/support/knowledgecenter/en/SS7JFU_8.5.5/com.ibm.websphere.express.doc/ae/tsec_SPNEGO_token.html 但

    • 我一直在尝试使用简单的REST客户端以及Mozilla的REST插件。我收到“HTTP/1.1 401未授权”响应,正文中带有“{”error:“unauthorized_client”、“error_description”:“客户端未授权”}。 我已经成功获取了auth码,下面是访问令牌的POST请求,(范围r_fullprofile) https://www.linkedin.com/uas

    • 当使用keytool生成keystore时,我收到错误非法选项:genkeypair。但是当我看到帮助时,genkeypair是可用的选项。我在指挥上做错了什么? C:\program files\java\jdk1.7.0_51\bin>keytool.exe-genkeypair-alias orbis-storetype pkcs12-keyalg rsa-keysize 2048-keys