使用JSONAPI更新Drupal用户的账户信息
最新动态
JSONAPI 正常的标准attributes更新如下:
PATCH {{apiUrl}}/api/v1/user/user/{{uuid}}
'Accept': 'application/vnd.api+json'
'Content-Type': 'application/vnd.api+json'
'X-CSRF-Token': {{csrfToken}}
{
"data": {
"type": "user--user",
"id":{{uuid}},
"attributes": {
"name": "johnson",
"full_name": "johnson"
}
}
}
需要注意的是,如果需要更新类似邮箱等信息时,需要提供当前的用户密码,否则会返回:
[
{
"title": "Unprocessable Entity",
"status": "422",
"detail": "pass: 你当前的密码丢失或不正确,要求更改 密码。",
"source": {
"pointer": "/data/attributes/pass"
}
},
{
"title": "Unprocessable Entity",
"status": "422",
"detail": "mail: 你当前的密码丢失或不正确,要求更改 电子邮件。",
"source": {
"pointer": "/data/attributes/mail"
}
}
]
而提供当前的用户密码的格式是:
{
"data": {
"type": "user--user",
"id": {{uuid}},
"attributes": {
"name": "johnson",
"full_name": "johnson",
"mail": "youremail@domain.com",
"pass": {
"existing": "xxx"
}
}
}
}