使用curl的RackSpace CreateImage API无效

时间:2013-04-01 09:34:21

标签: cloud rackspace-cloud rackspace

每当我尝试使用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但是成功了。

由于

2 个答案:

答案 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