微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我不能使用Trust of Platform的Identity API删除个人和团体身份之间的链接?

如何解决为什么我不能使用Trust of Platform的Identity API删除个人和团体身份之间的链接?

我已经在Sandbox上创建了帐户

然后我与创建了一个小组

curl -i -X POST \
   -H "Authorization: Bearer <ACCESS_TOKEN>" \
   -H "Content-Type: application/json" \
   -d \
"{
  \"context\": \"https://standards.oftrust.net/v2/Context/Identity/Group/\",\"type\": \"Group\",\"data\": {
    \"name\": \"Company Oy\"
  }
}" "https://api-sandBox.oftrust.net/identities/v1"

我还创建了个人和群组之间的链接,我使用了MemberOf

curl -i --request POST \
  --url https://api-sandBox.oftrust.net/identities/v1/{fromIdentityId}/link/{toIdentityId} \
  --header 'Authorization: Bearer <ACCESS_TOKEN>' \
  --header 'content-type: application/json' \
  --data '{
  "context": "https://standards.oftrust.net/v2/Context/Link/Role/MemberOf/","type": "Member"
}'

我成功地获得了在这些身份之间建立链接的答案。

现在尝试删除链接,但得到回复 404 和消息未找到链接

我尝试的是根据documentation

中的示例
curl -i -X DELETE \
   -H "Authorization: Bearer <ACCESS_TOKEN>" \
 "https://api-sandBox.oftrust.net/identities/v1/{fromIdentityId}/link/{toIdentityId}/MemberOf"

[更新]:我也在Identity API documentation中发现了可以列出所有身份链接的信息。 并以此为组标识:

curl -i -X GET \
   -H "Authorization: Bearer <ACCESS_TOKEN>" \
 "https://api-sandBox.oftrust.net/identities/v1/<group_id>/links"

响应显示组和个人身份之间的联系。

解决方法

首先,请确保您遵守“发件人”和“收件人”的id值(其顺序)。它们应该与您对https://api-sandbox.oftrust.net/identities/v1/<group_id>/links

的响应相同

第二,如示例所示,delete Link端点需要与一种类型一起使用。在这种情况下,MemberOf。但是,查看链接的创建有一个错字:使用的上下文是正确的,但是类型是Member。类型应与上下文中名称的最后部分匹配=> MemberOf

在这种情况下,由于您要删除它,只需使用Member

curl -i -X DELETE \
   -H "Authorization: Bearer <ACCESS_TOKEN>" \
 "https://api-sandbox.oftrust.net/identities/v1/{fromIdentityId}/link/{toIdentityId}/Member"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。