Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ibm cloud infrastructure 用于根据选定的存储大小、存储包、存储类型中的位置获取快照空间大小的API_Ibm Cloud Infrastructure - Fatal编程技术网

Ibm cloud infrastructure 用于根据选定的存储大小、存储包、存储类型中的位置获取快照空间大小的API

Ibm cloud infrastructure 用于根据选定的存储大小、存储包、存储类型中的位置获取快照空间大小的API,ibm-cloud-infrastructure,Ibm Cloud Infrastructure,我需要使用BPM over ICO(IBM Cloud Orchestrator)在我的应用程序中实现持久性存储的订购。我们需要以下参数 要创建用于下单的rest调用,请执行以下操作: 要使用的包 存储类型 位置 存储包 存储大小 快照空间大小 操作系统类型 我能够使用以下调用,根据所选存储类型、位置和存储包获取数据,直到存储大小: https://$user:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Product_Package/240/getI

我需要使用BPM over ICO(IBM Cloud Orchestrator)在我的应用程序中实现持久性存储的订购。我们需要以下参数 要创建用于下单的rest调用,请执行以下操作:

  • 要使用的包
  • 存储类型
  • 位置
  • 存储包
  • 存储大小
  • 快照空间大小
  • 操作系统类型
  • 我能够使用以下调用,根据所选存储类型、位置和存储包获取数据,直到存储大小:

    https://$user:$apiKey@api.softlayer.com/rest/v3/SoftLayer_Product_Package/240/getItemPrices?objectMask=mask[id,item[keyName,description],pricingLocationGroup[locations[id, name, longName]]]&objectFilter={"items":{"prices":{"pricingLocationGroup":{"locations":{"item":{"operation":"che01"}}}}}}
    

    但我不知道如何获取快照空间大小。获取快照空间大小的方法或API是什么?

    获取快照空间大小的方法是SoftLayer\u Product\u软件包::getItemPrices,它返回软件包中的所有价格请参阅文档

    您没有看到snapshot共享空间的原因是您使用的包没有此类项目(或类别)。您可以使用此RestFul查看包中的项目类型

    GET https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/222/getConfiguration?objectMask=mask[itemCategory]
    
    有关更多详细信息,请参阅文档

    因此,您必须使用另一个包,耐久性存储的包是240,您可以看到使用此RestFUl:

    Get https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/getAllObjects
    
    有关更多详细信息,请参阅文档

    您会注意到SoftLayer_Product_Package::getItemPrices中列出的项目包含一个名为category的属性,您可以使用此属性过滤数据(有关详细信息,请参阅文档)。 因此,要仅获取快照空间大小,请使用以下命令:

    GET https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/240/getItemPrices?objectFilter={"itemPrices": {"categories": {"categoryCode": {"operation": "storage_snapshot_space"}}}}
    
    有关更多详细信息,请参阅文档

    另外,您使用的过滤器不起作用,无法使用名称过滤位置(我不知道为什么,但它是这样工作的), 当前,您的请求正在获取所有数据,忽略筛选器,您需要使用“locationGroupId”筛选位置。有关更多详细信息,请参阅文档

    下面是一个获取位置“che01”的商品价格的简单示例

    您可能会问自己如何获得值585和583,请参阅文档

    下面是获取这些值的示例

    GET https://api.softlayer.com/rest/v3.1/SoftLayer_Product_Package/240/getRegions?objectMask=mask[location[location[priceGroups]]]
    
    现在,您可以混合使用过滤器来获取以下位置的所有快照空间大小:

    GET https://api.softlayer.com/rest/v3/SoftLayer_Product_Package/240/getItemPrices?objectFilter={"itemPrices": { "categories": {"categoryCode": {"operation": "storage_snapshot_space"}}   , "locationGroupId": {"operation": "in", "options": [{"name": "data", "value": [585,583]}]}}}
    
    我希望这对你有所帮助,你不需要再问同样的问题,但是如果你有更多的问题,请参阅文档,有很多关于订单和其他东西的好信息


    关于

    非常抱歉,由于错误,我在这里添加了222,但我应该使用240作为耐久性。我无法区分快照空间大小值与下面给出的调用:-{“itemPrices”:{“categories”:{“CategoricCode”:{“operation”:“storage_Snapshot_space”},“locationGroupId”:{“operation”:“in”,“options”:[{“name”:“数据”、“值”:[585583]}]}当我发现Softlayer上的耐久性存储的0 GB快照空间大小值忽略预期值0时,原因是您可以订购不带快照空间大小的耐久性存储,因此门户显示值0,以便在门户创建快照空间大小时,知道用户不需要快照空间大小没有为快照大小设置任何价格。关于您的第一个问题“我无法将快照空间大小值与下面给出的调用区分开来”,请您进一步说明我不明白。我使用了您提供的帮助:-{“itemPrices”:{“categories”:{“CategoricCode”:{“operation”:“storage_snapshot_space”}}从我作为响应得到的数据来看,我无法识别。我需要知道快照空间大小的ID,但这些ID对我来说无法与其他人区分。请帮我这个忙。。。
    GET https://api.softlayer.com/rest/v3/SoftLayer_Product_Package/240/getItemPrices?objectFilter={"itemPrices": { "categories": {"categoryCode": {"operation": "storage_snapshot_space"}}   , "locationGroupId": {"operation": "in", "options": [{"name": "data", "value": [585,583]}]}}}