尝试测试Auth0 API修补程序请求以修改user_metadata。 使用mocha和superagent进行测试。
获得成功,但使用用户ID进行修补并发送
.send({ "metadata": { "nickname": "Jill" } })
在mocha测试文件中不起作用。
router.patch('/:id', function(req, res, next) {
var options = {
method: 'PATCH',
url: 'https://mrides.auth0.com/api/v2/users/' + req.params.id,
headers: {
Authorization: "Bearer " + apiToken
},
data: req.body
}
request.patch(options, function(err, response, body) {
if(!err && response.statusCode == 200) {
res.send(JSON.parse(body))
} else {
res.status(500).send(err);
}
})
});
错误:
{
"statusCode": 400,
"error": "Bad Request",
"message": "Payload validation error: 'Expected type object but found type null'.",
"errorCode": "invalid_body"
}
看过这个问题: Auth0 API Request 但是在尝试时它没有用:
data: JSON.stringify(req.body)
有关如何操作修改user_metadata的任何帮助或链接?
一直在查看Auth0 docs但尚未取得进展。
答案 0 :(得分:0)
按照以下方式更改选项:
var options = {
method: 'PATCH',
url: 'https://mrides.auth0.com/api/v2/users/' + req.params.id,
headers: {
Authorization: "Bearer " + apiToken
},
// change here
body: req.body
}
request.patch(options, function(err, response, body) {
if(!err && response.statusCode == 200) {
res.send(JSON.parse(body))
} else {
res.status(500).send(err);
}
})
};