我有一个自定义 Api,我使用 Azure AD 保护了它,如下面的教程: https : //docs.microsoft.com/en-us/sharepoint/dev/spfx/use-aadhttpclient 那很好用。
现在我有以下代码向我的自定义 API 发出 GET 请求(工作):
this.context.aadHttpClientFactory
.getClient('MY_API_URL')
.then((client: AadHttpClient) => {
console.log(AadHttpClient.configurations.v1);
return client
.get(
`MY_API_URL/SOME_ROUTE`,
AadHttpClient.configurations.v1
);
})
.then(response => {
var res= response.json();
return res;
}).then( (res: any[]) => {
...
HERE I WOULD LIKE TO GET MY TOKEN
});
所以这是我期望的工作方式。但是 aadHttpClientFactory 只支持 GET 和 POST 请求
现在我的想法是使用 jQuery 发出一些 PUT/DELETE 请求并使用我上面得到的 Bearer 令牌(用邮递员及其工作进行测试)。但后来我意识到,我不会那么容易得到令牌。当我 console.log(AadHttpClient.configurations.v1) 我只得到这个:
当然,我可以将我的 API 更改为使用 POST 而不是 PUT/DELETE,但这会非常难看有没有人知道我如何将令牌作为字符串来使用它进行自定义请求?