每当我尝试使用curl从给定的api创建图像时: -
curl -i -X POST https://lon.servers.api.rackspacecloud.com/v1.1/xxxxxxxxx/servers/xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx/createImage -H“X-Auth-Token: xxxxxxxxx-xxxxxxxxx-xxxxxxxxx-xxxxxxxxx“-d'{”createImage“:{”name“ :“test_image”}}' - H“Content-type:application / json”
它引发了我的错误 - :
{“itemNotFound”:{“message”:“意外的错误 发生 “” 细节 “:” javax.ws.rs.WebApplicationException”, “代码”:404}} * 关闭连接#0
我需要帮助,如何使用curl创建服务器映像。但是所有其他机架空间服务器api对我来说都很好。
我在版本1.0,1.1和2.0中使用相同的api但是成功了。
由于
答案 0 :(得分:0)
在ServerFault(https://serverfault.com/questions/495087/rackspace-createimage-api-using-curl-is-not-working)回答了这个问题。
总之,您需要将要POST的URL更改为在UUID之后具有/ action,而不是/ createImage。示例cURL命令的结构如下:
curl -X POST -H "X-Auth-Token: AUTH-TOKEN" -H "Content-type: application/json" -d '{"createImage" : {"name" : "test"}}' https://lon.servers.api.rackspacecloud.com/v2/ACCOUNT-ID/servers/SERVER-UUID/action
答案 1 :(得分:0)
感谢Dave Kuldt。正确的api呼叫是 - :
卷曲-X POST -H“X-Auth-Token:AUTH-TOKEN”-H“内容类型: application / json“-d'{”createImage“:{”name“:”test“}}' https://lon.servers.api.rackspacecloud.com/v2/ACCOUNT-ID/servers/SERVER-UUID/action