我正在尝试使用curl从TrueVault API获取用户。
我一直在使用以下curl命令(根据文档):
curl https://api.truevault.com/v2/users/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx7ce \
-X GET \
-u API_KEY:"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx461"
凭据:
user_id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx7ce
api key: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx461
每次发送请求时,我都会收到错误消息:
"error": {
"code": "AUTH.UNSUCCESSFUL",
"message": "Authentication Failure.",
"type": "invalid_request_error"
},
"result": "error",
"transaction_id": "xxxxxxxx-xxxx-xxxx-xxxx-3ba883e31f99"
所以我想检查一下我是否做错了或者可能是其他事情。
该用户拥有所有权限(创建,读取,更新,删除)。
答案 0 :(得分:1)
看来您的Auth Header格式不正确。您可以在https://docs.truevault.com/overview#authentication上阅读有关如何构建Auth Header的更多信息。
要进行简单的卷曲,可以使用-u
选项,而不是构建base64 Basic Auth标头。 -u
期望username:password
,但是TrueVault的API基于令牌,因此他们希望您执行“ $ API_KEY:”。 注意空的第二个组件!尾随:
至关重要。
尝试一下:
curl https://api.truevault.com/v2/users/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx7ce \
-X GET \
-u "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx461:"