添加和查询指针不适用于 Parse.com 的 REST API

Posted

技术标签:

【中文标题】添加和查询指针不适用于 Parse.com 的 REST API【英文标题】:adding and querying pointers isn't working with the REST API for Parse.com 【发布时间】:2014-06-11 09:19:58 【问题描述】:

我正在使用从文档中复制过来的以下命令。为简洁起见,假设我在每个 curl 语句中传递了应用程序 ID 和键。

    创建播放器

    卷曲-X POST \ -d '"name":"abhinav", "rank" :"amazing"' \ https://api.parse.com/1/classes/Player

玩家对象 ID:HgMZF6H90L

    创建游戏并添加指针关系

    卷曲-X POST \ -d'“级别”:“两个”'\ https://api.parse.com/1/classes/GameScore

GameScore objectId:cwYIEwFaq9

curl -X PUT \
  -d '"opponents":"__op":"AddRelation","objects":["__type":"Pointer","className":"Player","objectId":"HgMZF6H90L"]' \
  https://api.parse.com/1/classes/GameScore/tDiFZSE0lQ

现在我从数据浏览器中检查,GameScore 对象有一个包含关系的字段。单击“查看关系”将我导航到下面的正确列表。工作正常,除了它说“关系”而不是指针。不确定这是否相关

但是,我无法从 REST API 查询此信息。 GET 生成关系数据,但没有可用的玩家的 objectId。

curl -X GET \
  https://api.parse.com/1/classes/GameScore/cwYIEwFaq9

结果:

"Level":"TWO","createdAt":"2014-06-11T08:49:43.325Z","objectId":"cwYIEwFaq9","opponents":"__type":"Relation","className":"Player","updatedAt":"2014-06-11T08:51:01.093Z"

尝试使用包含选项,但会导致一些错误

curl -X GET \
  --data-urlencode "include=opponents" \
  https://api.parse.com/1/classes/GameScore/cwYIEwFaq9

结果:

代码 107,无效 JSON

我做错了什么?

【问题讨论】:

错误意味着你的json不好 【参考方案1】:

为什么要使用“删除”来添加关系?再次查看文档。

再次转到文档部分“创建角色”....

 "__op": "AddRelation",
          "objects": [
            
              "__type": "Pointer",
              "className": "_Role",
              "objectId": "Ed1nuqPvc"
            
          ]

-- 编辑 要使用“include=opponents”,您可以使用以下方法创建:

"opponents":"__op":"Add","objects":["__type":"Pointer","className":"_Role","objectId":"Ed1..."]

【讨论】:

很抱歉 - 剪切和粘贴错误。问题仍然存在。我已经编辑了上面的代码。感谢您指出这一点【参考方案2】:

已解决:

问题是我需要创建一个指针数组。因此,我只需要使用“AddUnique”操作来为数组创建一个条目,而不是“AddRelation”。所以

curl -X POST \
 -d '"Level" : "TWO", "opponents":"__op":"AddUnique","objects":["__type":"Pointer","className":"Player","objectId":"5Q4QsKF8QR"]' \
  https://api.parse.com/1/classes/GameScore

【讨论】:

以上是关于添加和查询指针不适用于 Parse.com 的 REST API的主要内容,如果未能解决你的问题,请参考以下文章

Parse.com 错误:无法向关系添加非指针

推送通知不适用于通过 Parse.com 发送的 Android 和 iOS 设备

Swift 无法从 parse.com 检索图像

嵌套包含 Parse.com

Parse.com 云代码 afterSave() 错误:“未捕获尝试使用指向新的未保存对象的指针保存对象。”

AJAX 添加到购物车按钮不适用于自定义查询循环产品 woocommerce