IBM Watson Machine Learning 手写数字示例笔记本认证错误

IBM Watson Machine Learning hand-written digits sample notebook authentication error

完成 Recognition of handwritten digits with IBM Watson Machine Learning 笔记本的第 6.1 节时,调用 Watson Machine Learning REST API 获取列表已发布的模型使用:

GET /v3/wml_instances/{instance_id}/published_models

端点,授权 (401) 错误,响应文本如下:

{"trace":"-1xmid60eblabs","errors":[{"code":"invalid_token_format","message":"Invalid token format. Bearer token format should be used.","target":{"type":"header","name":"Authorization"}}]}

笔记本中先前的 REST API 调用使用从 /v3/identity/token 端点返回的授权令牌获取实例详细信息工作正常。

笔记本中似乎有错误。 API 授权方案更改是否破坏了笔记本?

REST API 中的此端点似乎需要根据 HTTP 1.0

中的 W3C Authorization: <type> <credentials> 形式进行身份验证

我更新了笔记本代码以在 header 的授权字段中添加类型:

header = {'Content-Type': 'application/json', 'Authorization': 'Bearer ' + mltoken}

Watson Machine Learning 的其余部分 API 创建在线部署和对新数据评分的调用在笔记本中使用相同的 header 并且全部正确执行。