如何 POST / PUT 编号为 属性 的边?
How to POST / PUT edge with number property?
我正在使用 Rexster 将数据加载到 TitanDB 中。 posting / 放置顶点时,我可以在请求正文中提供 JSON 属性。如果 属性 的值是一个数字,它将相应地存储为一个数字,并且可以这样检索。例如,以下正文将在 post 消息中创建一个 属性 "score" 类型的数字:
{
"score": 5
}
但是,当 POSTing / PUTing 边时,属性似乎只能作为查询参数提供,例如:
POST .../graphs/graph/edges?_outV=256&_label=review&_inV=512&score=5
在这种情况下,不幸的是,5 始终被视为字符串:“5”。因此,包括数字运算/比较在内的查询不起作用。例如,以下查询仍将 return posted 边(尽管 posted 分数为 5):
v(256).outE('review').filter{it.getProperty('score')>9}
有没有办法 POST / PUT 边及其属性,以便考虑数字类型?
我有理由相信你可以 POST JSON 到边缘路线,但即使你不能,你也可以使用 Rexster 的显式类型系统来正确 post 你的整数:
$ curl -X POST "http://localhost:8182/graphs/tinkergraph/edges?_outV=1&_inV=2&_label=knows&score=(i,5)"
{
"version":"2.7.0-SNAPSHOT",
"results": {
"score":5,"_id":"0","_type":"edge","_outV":"1","_inV":"2","_label":"knows"
},
"queryTime":31.79554
}
我正在使用 Rexster 将数据加载到 TitanDB 中。 posting / 放置顶点时,我可以在请求正文中提供 JSON 属性。如果 属性 的值是一个数字,它将相应地存储为一个数字,并且可以这样检索。例如,以下正文将在 post 消息中创建一个 属性 "score" 类型的数字:
{
"score": 5
}
但是,当 POSTing / PUTing 边时,属性似乎只能作为查询参数提供,例如:
POST .../graphs/graph/edges?_outV=256&_label=review&_inV=512&score=5
在这种情况下,不幸的是,5 始终被视为字符串:“5”。因此,包括数字运算/比较在内的查询不起作用。例如,以下查询仍将 return posted 边(尽管 posted 分数为 5):
v(256).outE('review').filter{it.getProperty('score')>9}
有没有办法 POST / PUT 边及其属性,以便考虑数字类型?
我有理由相信你可以 POST JSON 到边缘路线,但即使你不能,你也可以使用 Rexster 的显式类型系统来正确 post 你的整数:
$ curl -X POST "http://localhost:8182/graphs/tinkergraph/edges?_outV=1&_inV=2&_label=knows&score=(i,5)"
{
"version":"2.7.0-SNAPSHOT",
"results": {
"score":5,"_id":"0","_type":"edge","_outV":"1","_inV":"2","_label":"knows"
},
"queryTime":31.79554
}