有没有办法使用 JS 从 SharePoint 列表中检索数据并将列表权限保密给匿名用户?

Is there a way retrieve data from SharePoint list using JS & keep the list permission private for anonymous users?

我正在使用 JavaScript 从 SharePoint 列表中检索数据,如下所示。

$().SPServices({
   operation: 'GetListItems',
   async: false,
   listName: listName,
   CAMLViewFields: '<ViewFields></ViewFields>',    
   completefunc: function (xData, status) {
     if (status === 'success') {
       // I work with the data in "$(xData.responseXML).find('z\:row, row')"

     } else {
    console.log('\n Status is ' + status + '\n And data is ' + xData);
    }
  }
});

但是,我需要将列表读取权限授予匿名用户才能使上述解决方案生效。有没有一种方法可以使用 JavaScript 从 SharePoint 列表中检索数据,同时使 SharePoint 列表权限对匿名用户保密?

不,你不能。客户端脚本使用当前用户权限访问列表,因此无法查询私人列表。但你可以:

  1. 创建一个新列表(包含您需要的列)并使用 MS Flow/Workflow 在 2 个列表之间同步,然后查询该列表。当然,新列表需要public.

  2. 开发网络 api。在此网站 api 中,您可以使用另一个帐户(或客户端 id/client 秘密)从共享点列表中查询数据。在客户端脚本中,您从 api.

  3. 查询数据