Microsoft graph api 您没有执行此操作或访问此资源的权限。pnp

Microsoft graph api 您没有执行此操作或访问此资源的权限。pnp,microsoft-graph-api,sharepoint-online,pnp-js,Microsoft Graph Api,Sharepoint Online,Pnp Js,我们有一个门户,azure广告用户将在其中登录,并能够从sharepoint上的列表中查看数据 试图通过使用和 对于开发阶段,使用成功地执行了所有列表操作 但是,当在azure web app中构建并上载相同的angular项目时,它会给出一个错误,即“{”错误“{”代码“:-2147024891,System.UnauthorizedAccessException”,“message:{”lang:“en-US”,“value:“访问被拒绝。您没有执行此操作或访问此资源的权限。”}}}” 响应

我们有一个门户,azure广告用户将在其中登录,并能够从sharepoint上的列表中查看数据

试图通过使用和

对于开发阶段,使用成功地执行了所有列表操作 但是,当在azure web app中构建并上载相同的angular项目时,它会给出一个错误,即
“{”错误“{”代码“:-2147024891,System.UnauthorizedAccessException”,“message:{”lang:“en-US”,“value:“访问被拒绝。您没有执行此操作或访问此资源的权限。”}}}

响应头也有错误,如
X-MSDAVEXT_错误:917656;访问被拒绝。+在+打开+文件+在此+位置%2c+您必须+首先+浏览+到+网站+并+选择+选项+自动登录。
现在使用SP设置变量

const SPHeaders: any = {
  "Accept": "application/json;odata=verbose",
  "content-type": "application/json;odata=verbose"
 };
 sp.setup({
  sp: {
  baseUrl: "SharePoint siteUrl",
  headers: SPHeaders
  }
 });
注意:用户成功登录,我可以在graph api的帮助下查看active directory用户信息

我甚至尝试传递在SP设置中进行身份验证后获得的令牌,如下所示,但这会导致一个错误,即reason=“令牌包含无效签名。”;category=“无效的客户机”

 sp.setup({
      sp: {
        baseUrl: environment.web,
        headers: {
          "Accept": "application/json;odata=verbose",
          "Authorization": `Bearer ${token}`
        }
      }
    });