Machine learning watson机器学习api-令牌刷新400错误
我已经使用Machine learning watson机器学习api-令牌刷新400错误,machine-learning,ibm-cloud,ibm-watson,Machine Learning,Ibm Cloud,Ibm Watson,我已经使用GET/v3/identity/tokenAPI成功地生成了一个令牌。我现在希望能够利用PUT API来保持令牌的活动状态 我正在尝试此curl命令: curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' -d '<token-value>' 'https://ibm-watson-ml.mybluemix.net/v3/identity/token
GET/v3/identity/token
API成功地生成了一个令牌。我现在希望能够利用PUT API来保持令牌的活动状态
我正在尝试此curl命令:
curl -X PUT --header 'Content-Type: application/json' --header 'Accept: application/json' -d '<token-value>' 'https://ibm-watson-ml.mybluemix.net/v3/identity/token' -v -i --basic --user <username>:<password>
curl-X PUT--header'Content-Type:application/json'--header'Accept:application/json'-d''https://ibm-watson-ml.mybluemix.net/v3/identity/token'-v-i--basic--user:
我得到一个400错误,说明:
对于请求“PUT/v3/identity/token”[无效Json:数值中的意外字符('-'(代码45)]:期望数字(0-9)跟在减号后面,对于[Source:akka.util.ByteInterator$ByteArrayInterator$$anon]处的有效数值$1@18bd12ef;行:1,列:3]]
get请求返回的令牌中包含破折号字符以及其他非alphnumeric值
是否需要解析get请求中的令牌?我缺少什么?您需要将内容类型设置为
application/json
。但是-d
发送内容类型application/x-www-form-urlencoded
,这在IBM方面可能不被接受
但是,您的JSON(令牌)格式似乎不正确
令牌值需要采用以下格式(JSON):
您需要遵循正确发送格式的示例:
curl -H 'Content-Type: application/json' -X PUT \
-d '{"token":"yourToken"}' \
https://ibm-watson-ml.mybluemix.net/v3/identity/token
请参阅官方文件。不确定您是否了解招摇过市文档。您可以在那里尝试,也许可以获得有关如何重新格式化curl命令的提示。可能您的JSON格式不正确,或者尝试使用双引号
“
谢谢,这是curl命令中的-d参数。格式是{“token”:“”},而不仅仅是token值。。。
curl -H 'Content-Type: application/json' -X PUT \
-d '{"token":"yourToken"}' \
https://ibm-watson-ml.mybluemix.net/v3/identity/token