Php 使用API查询接受附加值

Php 使用API查询接受附加值,php,api,Php,Api,这是一个API查询,我在另一家公司开发的定制应用程序中找到了它,该应用程序没有任何文档,这不在我的技能范围之内,但也在你的能力范围之内 目的是查找“类别”等于“重要”的任何项目 如果还可以退回“类别”等于“3M CGS”以及“重要”的物品,那就太好了 以下是重要类别的工作代码 //List: Calendar, CATEGORY=IMPORTANT var queryImportantDept = _spPageContextInfo.webAbsoluteUrl + "/_api/web/

这是一个API查询,我在另一家公司开发的定制应用程序中找到了它,该应用程序没有任何文档,这不在我的技能范围之内,但也在你的能力范围之内

目的是查找“类别”等于“重要”的任何项目

如果还可以退回“类别”等于“3M CGS”以及“重要”的物品,那就太好了

以下是重要类别的工作代码

//List:  Calendar, CATEGORY=IMPORTANT

var queryImportantDept = _spPageContextInfo.webAbsoluteUrl + "/_api/web/lists/GetByTitle('Calendar')/Items?$select,FileRef=*&$orderby=EventDate%20asc&$top=10&$filter=Category%20eq%20%27Important%27"; 

$.ajax({ url: queryImportantDept, method: "GET", headers: { "Accept": "application/json; odata=verbose" }, success: onQuerySuccessDeptImportantDates, error: onQueryErrorDeptImportantDates});

使用ODATA,您可以轻松地组合过滤器表达式。在你的例子中,下面的表达式

$filter=Category%20eq%20%27Important%27
will可以与
逻辑组合到该表达式中:

$filter=Category%20eq%20%27Important%27%20and%20Category%20eq%20%273M%20CGS%27%20
视觉上更吸引人的可能是这种形式:

$filter=Category eq 'Important' and Category eq '3M CGS' 
$filter=Category eq 'Important' or Category eq '3M CGS' 
如果要返回实体,如果
类别
重要的
3M CGS
(或两者兼有),则可以使用以下表单:

$filter=Category eq 'Important' and Category eq '3M CGS' 
$filter=Category eq 'Important' or Category eq '3M CGS' 
如果您有更复杂的场景,或者出于可读性的考虑,您也可以将其放在括号中:

$filter=(Category eq 'Important') and (Category eq '3M CGS') 
如果您的框架还没有这样做,请不要忘记对其进行URL编码


有关ODATA查询选项的更多信息,请查看(这是v3,根据您所使用的系统使用适当的版本)。

感谢您的清理工作。我需要提供更多信息来帮助解决此问题吗?感谢您的详细解释。我将开始研究ODATA作为解决许多类似问题的可能方案:)