【问题标题】:sharepoint 2010 GetFolderByServerRelativeUrl not workingsharepoint 2010 GetFolderByServerRelativeUrl 不起作用
【发布时间】:2018-05-03 20:38:37
【问题描述】:

版本:Sharepoint 2010 由 Apps4rent 托管 使用 sharepoint 2013 我能够使用 _api/Web/GetFolderByServerRelativeUrl('') API 调用获取文件夹和文件 但是对于 sharepoint 2010 实例,如果我尝试 _api/Web/GetFolderByServerRelativeUrl('') 这个 API,它会给出 404 错误。 如果我在这里做错了,请纠正我

【问题讨论】:

    标签: api sharepoint sharepoint-2010


    【解决方案1】:

    是的。 SharePoint 2010 不支持REST API,但您可以使用listdata.svc 服务。

    参考下面的代码。这应该适合你:

    'https://abc.abcd.com/sites/RohitW/_vti_bin/Listdata.svc/DocLibTest2?$filter=endswith(Path, 'folder1')'

    注意: 这里我们试图获取文档库(即DocLibTest2)的特定文件夹(即folder1)中存在的文件

    1. DocLibTest2 是文档库的名称。

    2. folder1 是存在于DocLibTest2 中的文件夹的名称

    参考:http://www.sharepointnadeem.com/2012/08/enumerating-items-inside-folder-using.html

    【讨论】:

      【解决方案2】:

      SharePoint 2010 不支持直接在浏览器中使用 Rest API,请使用 JSOM 调用:

      <script type="text/javascript">
      ExecuteOrDelayUntilScriptLoaded(getFilesInFolder, 'sp.js');
          var files;
          function getFilesInFolder() {        
              var context = SP.ClientContext.get_current();
              var web = context.get_web();
              var folder = web.getFolderByServerRelativeUrl('/sites/test/Shared%20Documents');
              files = folder.get_files();
              context.load(files);
              context.executeQueryAsync(Function.createDelegate(this, this.OnSuccess), Function.createDelegate(this, this.OnFailure));
          }
          function OnSuccess()
          {                                              
              var listItemEnumerator = files.getEnumerator();
                  while (listItemEnumerator.moveNext()) {
                      var fileUrl = listItemEnumerator.get_current().get_serverRelativeUrl();
                      console.log(fileUrl);           
                  }                                         
          }
      
          function OnFailure(sender, args) {
              alert("Failed. Message:" + args.get_message());
          }
      </script>
      

      【讨论】:

        猜你喜欢
        • 2021-12-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-18
        • 2019-03-22
        相关资源
        最近更新 更多