jsonpath:混合两个路径

埃勒特·范·科珀伦

我正在使用图谱api在facebook上查询评论已发布图片或喜欢/ me用户已发布图片的用户的完整个人资料图片。我正在尝试:

  • 在一个查询中执行此操作,在此我无法从足够深的位置获取数据。
  • 或最小化子查询的数量

在一个查询中:这不起作用(它没有提供被评论用户的详细信息):

me/photos/uploaded?fields=from,images,comments.picture,likes.picture&limit=500

并指定尺寸会引发错误:

me/photos/uploaded?fields=from,images,comments.picture,likes.picture.type(large)&limit=500

尽管我在文档中没有发现任何明确内容,但是您可以指定的深度似乎有一个限制。(非常简洁,不足为奇)

因此,解决具有依赖项的批处理查询

myphotos => me/photos/uploaded?fields=created_time,name,id,from,comments.summary(1).limit(100),images,likes.summary(1).limit(100)&limit=500 
userinfo_photocomments => ?ids={result=myphotos:$.data.*.comments.data.*.from.id}&fields=id,name,updated_time,picture.redirect(0).type(large).height(2000).width(2000)
userinfo_photolikes => ?ids={result=myphotos:$.data.*.likes.data.*.id}&fields=id,name,updated_time,picture.redirect(0).type(large).height(2000).width(2000)

尽管这有效,但我无法在一个或最多2个查询中找到如何做的事实使我很烦,特别是因为最后2个子查询的结果很可能会重叠。

我想找到一种混合jsonpath锚点的方法,这样我就可以结合最后两个查询。问题似乎在于评论者和喜欢者的用户ID在树中的不同深度。

如有任何见解,我将不胜感激。

托比

我认为您应该能够使用两次来自第一个查询的结果,从而导致只有两个查询。

我测试了?ids=端点是否筛选出重复项user_id,如下所示:

GET /?ids={user_id1},{user_id2},{user_id1}

结果只能得到两个截然不同的结果user_ids

因此,这将在以下批处理查询中产生:

curl \
   -F 'access_token={access_token}' \
   -F 'batch=[{ "method":"GET","name":"myphotos","relative_url":"me/photos/uploaded?fields=created_time,name,id,from,comments.summary(1).limit(100),images,likes.summary(1).limit(100)&limit=500",},{"method":"GET","relative_url":"?ids={result=myphotos:$.data.*.comments.data.*.from.id},{result=myphotos:$.data.*.likes.data.*.id}&fields=id,name,updated_time,picture.redirect(0).type(large).height(2000).width(2000)"}]' \
   https://graph.facebook.com/

只需替换{access_token}为实际的访问令牌即可对此进行测试。

基本上,我只是将user_id评论和喜欢列表串联在一起

GET ?ids={result=myphotos:$.data.*.comments.data.*.from.id},{result=myphotos:$.data.*.likes.data.*.id}&fields=...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

两个对象之间的Alpha混合

来自分类Dev

OpenGL混合了两个FBO

来自分类Dev

混合两个不同的脚本

来自分类Dev

混合两个PFQuery结果

来自分类Dev

在R中混合两个散点图

来自分类Dev

合并/混合两个单词列表

来自分类Dev

MySQL的联合/混合两个表

来自分类Dev

libgdx混合两个面罩?

来自分类Dev

混合两个插入与子查询?

来自分类Dev

比较python中的两个路径

来自分类Dev

Xpath结合了两个树路径

来自分类Dev

两个路径之间最长的匹配子路径

来自分类Dev

两个不相交集之间的路径(路径算法)

来自分类Dev

QuickFIX / J混合两个不同版本

来自分类Dev

计算两个十六进制整数值的混合

来自分类Dev

了解Matlab示例适合两个正态分布的混合

来自分类Dev

在OS X上使用Swift混合两个NSImage

来自分类Dev

平均混合两个元素列表(负载平衡)

来自分类Dev

python中混合两个列表的循环法

来自分类Dev

使用递归混合两个列表中的值

来自分类Dev

混合两个向量:[aa]和[bb]到[abab]

来自分类Dev

混合/合并两个半完整的熊猫数据框

来自分类Dev

在Javascript中混合两个对象数组信息的算法?

来自分类Dev

FFMpeg; 混合两个音频流时出错

来自分类Dev

python中混合两个列表的循环法

来自分类Dev

iOS Sprite Kit-SKSpriteNode-混合两个Sprite

来自分类Dev

AngularJS:混合两个JSON文件中的数据

来自分类Dev

在OS X上使用Swift混合两个NSImage

来自分类Dev

Java:混合两个WAV文件而不引入噪音