我目前正在为弹性搜索实现RESTful API。有没有办法用通用值查询ES?例如,这将允许用户传入任何键和值,这会将值转换为任何类型的字段。我觉得我让它复杂化了。有没有更简单的方法来查询ES传递给它的通用值?
前:
我可以传递以下内容:POST命令 -
RulesGreaterThanDictionary是:
public Dictionary<string, Object> RulesGreaterThanDictionary { get; set; }
POST呼叫是:
{
"RuleEquals":
{
"RulesEqualDictionary":
{
"email" : "ggg@gmail.com",
"validUser" : true
}
},
"RuleGreaterThan" :
{
"RulesGreaterThanDictionary" :
{
"minamount" : 10
}
}
}
因为这会查询ES以查找电子邮件等于某个电子邮件的文档,并且是有效用户以及该项目的最小数量至少为10。
像这样的通用。
之前是否已经实施过? 谢谢!
答案 0 :(得分:0)
另一种可能性是编写包装器
public class ValueWrapper {
...
public static final String VALUE = "value";
private T value;
// getter & setter
}
然后映射包装器而不是你可以通用的对象:)