首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新复合属性时SCIM用户PUT方法的输出

更新复合属性时SCIM用户PUT方法的输出
EN

Stack Overflow用户
提问于 2015-05-25 03:39:27
回答 1查看 88关注 0票数 0

我在mu用户存储中有一个具有以下属性的用户。

代码语言:javascript
复制
{
  "id": "bfae138c-9f57-4ff1-ab63-599f2034371f",
  "schemas":[
    "urn:scim:schemas:core:1.0"
  ],
  "name":{
    "formatted": "Ms. Barbara J Jensen III",
    "familyName": "Jensen",
    "givenName": "Barbara"
  },
  "userName": "bjensen123",
  "externalId": "bjensen",
  "meta":{
    "lastModified": "2015-05-25T08:59:28",
    "location": "https://localhost:9443/wso2/scim/Users/bfae138c-9f57-4ff1-ab63-599f2034371f",
    "created": "2015-05-25T08:59:28"
  }
}

我用下面的方法正文向这个资源发送一个put请求。

代码语言:javascript
复制
{
  "schemas":["urn:scim:schemas:core:1.0"],
  "userName":"bjensen123",
  "name":{
    "formatted":"Ms. Bb",
  }
}

我的结果资源的name属性应该是什么?

代码语言:javascript
复制
"name":{
   "formatted":"Ms. Bb",
}

代码语言:javascript
复制
"name":{
     "formatted": "Ms. Bb",
    "familyName": "Jensen",
    "givenName": "Barbara"
  }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-26 16:33:06

PUT请求将作为一个完整的更新来处理,而不是只更新指定属性的修补程序,它对于实现者来说是可选的(根据SCIM1.1规范)。PUT的意图是请求者首先执行用户的read (GET),更改所需的属性,并提供一个全面的更新,以包括那些没有实际更改的属性(密码是唯一的例外)。没有在PUT请求中指定值的任何属性都会被吹走。因此,根据您的示例,PUT响应将返回为:

“姓名”:{“格式化”:“Bb女士”}

如果您不想丢失familyName和givenName,您也必须重新指定这些属性(以及任何其他您不想放弃的属性)。以下是规范定义:http://www.simplecloud.info/specs/draft-scim-api-01.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30430869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档