我在mu用户存储中有一个具有以下属性的用户。
{
"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请求。
{
"schemas":["urn:scim:schemas:core:1.0"],
"userName":"bjensen123",
"name":{
"formatted":"Ms. Bb",
}
}我的结果资源的name属性应该是什么?
"name":{
"formatted":"Ms. Bb",
}或
"name":{
"formatted": "Ms. Bb",
"familyName": "Jensen",
"givenName": "Barbara"
}发布于 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
https://stackoverflow.com/questions/30430869
复制相似问题