簡體   English   中英

Odata $filter 總是返回帶有節點 js 和 postgresql 的空數組

[英]Odata $filter always returns empty array with node js and postgresql

我想用 OData 和 $filter 參數創建一個簡單的 REST 端點。 這是我的過濾器查詢參數: $filter=shoecolor eq 'black'

這是我的節點 js 代碼:

import { createFilter } from "odata-v4-pg";
...
   var filter = createFilter(req.query.$filter + "");            
   const projectName = req.params.projectname;
   const storeName = req.params.storename; 
 
   this.logger.info(filter.where);      // prints: "shoecolor" = $1         

   var result = await this.database.any(`SELECT * FROM $1:name.$2:name WHERE ${filter.where}`, [projectName, storeName]);
   this.logger.info(result);           // prints an empty array!!!
...

為什么我的帶有 OData $filter 的 SELECT 總是為空?

我自己找到了解決方案:我忘記將 filter.parameters 傳遞給查詢。 這個鏈接給出了一個很好的例子: https://www.npmjs.com/package/odata-v4-pg?activeTab=readme

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM