REST问题Sharepoint 2013

时间:2015-07-16 15:20:42

标签: rest sharepoint sharepoint-2013

我正在使用Sharepoint 2013的REST接口从列表中检索一些元素。

这是我的功能:

<script type="text/javascript">
    function getAllProgramName(){
        // Getting our list items
        var call = $.ajax({
            url: "https://aleinternational.sharepoint.com/sites/CapexRequest/_api/web/lists/getByTitle('Program')/items?$filter=Year eq '2015'&$select=Program_x0020_name",
            method: "GET",
            headers: { "Accept": "application/json; odata=verbose" },
        });
        call.done(function(data,textStatus,jqXHR){
            alert('success'+jqXHR.responseText);
        });
        call.fail(function(data,textStatus,jqXHR){
            alert('success'+jqXHR.responseText);
        });
    }
</script>

但是当我在url中有两个操作时,我总是得到一个相关ID错误(这里,我有$ select和$ filter)。 如果我删除$ filter或$ select操作,它可以正常工作。

你们有什么想法吗? 谢谢!

1 个答案:

答案 0 :(得分:0)

@ user3206787我最近写了一个REST代码。

关于你的查询,我改变了$ filter和$ select的顺序。仍然查询返回结果。因此$ select和$ filter的顺序无关紧要。

 url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/getbytitle('Exit%20Test%20Questions')/Items?$filter=ExitTest/Id eq "+$scope.selectedTest.Id+"&$select=Title,Answer,Id,QuestionType,ExitTest/Id&$expand=ExitTest/Id", 


/_api/web/lists/getbytitle('Exit%20Test%20Questions')/Items?$select=Title,Answer,Id,QuestionType,ExitTest/Id&$expand=ExitTest/Id&$filter=ExitTest/Id eq "+$scope.selectedTest.Id

请检查两件事: -

  1. 将年份作为int:2015而不是字符串:'2015'
  2. 在选择第一次尝试获取基本标题列[$ select = Title]和 然后,如果它正在获取所需的结果,那么去复杂的列 名称类似于Program_x0020_name。