javascript - 是否可以将删除/放置请求发送到 Azure AD 安全 api 或使用 aadHttpClientFactory 以字符串形式获取 jwt token

标签 javascript typescript sharepoint azure-active-directory httpclientfactory

我有一个自定义 Api,我使用 Azure AD 保护它,如下教程所示: https://learn.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 token (使用 postman 及其工作进行测试)。 但后来我意识到,我不会那么容易得到 token 。 当我 console.log(AadHttpClient.configurations.v1) 我只得到这个: enter image description here

当然,我可以将 API 更改为使用 POST 而不是 PUT/DELETE,但这会非常难看 有谁知道如何获取字符串形式的 token 来用它执行自定义请求?

最佳答案

AadHttpClient支持fetch(url, configuration, options)方法,其中 options 可以包含 Fetch API 支持的所有请求配置选项.

因此,要发出 DELETE 请求,您需要执行以下操作:

client
    .get(
      `MY_API_URL/SOME_ROUTE`,
      AadHttpClient.configurations.v1,
      {
          method: 'DELETE'
      }
    );

关于javascript - 是否可以将删除/放置请求发送到 Azure AD 安全 api 或使用 aadHttpClientFactory 以字符串形式获取 jwt token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58647053/

相关文章:

javascript - Canvas 抖动了一半的渲染

JavaScript 美国货币格式

javascript - 通过javascript将json转换成树数据

javascript - Angular - 在组件之间共享图像

angular - 双向 Angular 绑定(bind)中的 ExpressionChangedAfterItHasBeenCheckedError

c# - 如何使用VS2010在 'Person or Group'字段中插入数据?

javascript - 如何创建可用于多个元素的图库页面?

typescript - 联合类型和 "currying"/partial 应用程序样式 API

linq - SharePoint、List.Items 和 List.GetItems(Query) 和 Linq

SharePoint - 数字字段是什么类型