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