Power Bi Rest API请求承载令牌在Postman中工作,但在 AJAX 时不工作?

xggvc2p6  于 2023-06-29  发布在  Postman
关注(0)|答案(1)|浏览(152)

所以我一直在尝试从我的网站获得bearer token来使用refresh dataset作为管理工具,以更快地访问云数据集和表,从官方文档HERE当从文档中尝试时它可以工作,但我需要bearer token来使它在此页面之外工作,所以我在powerbi论坛上找到了端点来做,我遵循了HERE的步骤,它在Postman上按预期工作,但在 AJAX 上它给了我很多错误,CORS策略错误和代码400(错误请求),你能在这里帮助我吗?我错过了什么或做错了什么?怎么修?
Screenshot of Postman working endpoint(data changed for security issues)
screenshot ajax Error 1
screenshot ajax Error 2

以下是我 AJAX 代码:

let reqBody = {
            grant_type: "password",
            resource: "https://analysis.windows.net/powerbi/api",
            username: "username",
            password: "password",
            client_id: "clientid",
            client_secret: "",
        }

        $.ajax({
            type: "POST",
            url: `https://login.windows.net/common/oauth2/token`,
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8', 
            'Access-Control-Allow-Origin':"*"
       },
            data: JSON.stringify(reqBody),
            contentType: "application/json",
            crossDomain: true,
            dataType: 'json',
            success: function (response) {
                console.log("response: ", response);
            },
            error: function (error) {
                console.log("error: ",error);
            }
        });
tp5buhyn

tp5buhyn1#

当我们授权而不为重定向URI设置CORS时,我们将面临这个错误。要解决此错误,我们需要更新应用的重定向URI以使用spa类型。
有关详细信息,请参阅Microsoft身份平台和OAuth 2.0授权代码流文档。

相关问题