我们正在开发SL Portal,目前我们已经发现, 从SL控制页面,当我们尝试订购时, 即使对于所有不同的数据中心,Netscaler的价格也始终相同。 但是,当我们通过API检索价格时,价格并不相同。
请为每个数据中心确定合适的价格,在制作新的门户网站时,我们必须遵循什么?
感谢。
答案 0 :(得分:0)
您看到相同商品价格的原因是因为Control Portal选择的价格可能是“标准价格”。 “标准价格”意味着它可用于为任何地点订购商品。
但是,...... 我们如何知道价格是否是“标准价格”?
以下请求可帮助我们根据位置/数据中心获取价格。
REST示例:
https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Product_Package/192/getItemPrices?objectMask=mask[id,locationGroupId,item[id,keyName,description],pricingLocationGroup[locations[id, name, longName]]]
Method: GET
<强>其中:强>
用于NetScaler的包是= 192。
具有locationGroupId = null的价格ID被视为“标准价格”,API将在内部切换客户的价格。但建议首先执行“verifyOrder”,以查看所需订单是否正常(费用可能会有所不同)。
有关更多信息,请查看:
http://sldn.softlayer.com/blog/cmporter/Location-based-Pricing-and-You
这是使用标准价格的订单请求:
https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Product_Order/verifyOrder.json
Method: POST
Json Payload:
=========================
{
"parameters": [
{
"location": 138124, // "DALLAS05"
"packageId": 192,
"complexType": "SoftLayer_Container_Product_Order_Network_Application_Delivery_Controller",
"prices": [
{
"id": 22315 // "Citrix NetScaler VPX 10.1 10Mbps Standard"
},
{
"id": 17238 // 2 Static Public IP Addresses
}
],
"quantity": 1
}
]
}
=========================
Note: Remove the comments in order to get the request working.
上述请求可以与不同的数据中心一起使用。
此外,我们可以使用非标准价格的价格ID。
例如,我们希望得到:
适合的商品价格ID是(SoftLayer_Product_Package :: getItemPrices):
…
{
"id": 51173
"locationGroupId": 509
"item": {
"description": "Citrix NetScaler VPX 10.1 10Mbps Standard"
"id": 4425
"keyName": "CITRIX_NETSCALER_VPX_10_1_10MBPS_STANDARD"
}-
"pricingLocationGroup": {
"description": "Location Group 5"
"id": 509
"locationGroupTypeId": 82
"name": "Location Group 5"
"securityLevelId": null
"locations": [3]
0: {
"id": 352494
"longName": "Hong Kong 2"
"name": "hkg02"
}-
1: {
"id": 449604
"longName": "Tokyo 2"
"name": "tok02"
}-
2: {
"id": 224092
"longName": "Singapore 1"
"name": "sng01"
}-
-
}-
} …
地点:此价格允许的地点是:香港2,东京2和新加坡1。
我们的订单会改变这样的事情:
{
"parameters": [
{
"location": 224092, // Singapore 1
"packageId": 192,
"complexType": "SoftLayer_Container_Product_Order_Network_Application_Delivery_Controller",
"prices": [
{
"id": 51173
},
{
"id": 17238
}
],
"quantity": 1
}
]
}
<强>参考文献:强>
http://sldn.softlayer.com/reference/services/SoftLayer_Product_Package/getItemPrices http://sldn.softlayer.com/reference/services/SoftLayer_Product_Package/getAllObjects http://sldn.softlayer.com/reference/services/SoftLayer_Product_Package http://sldn.softlayer.com/blog/cmporter/Location-based-Pricing-and-You http://sldn.softlayer.com/reference/services/SoftLayer_Location/getDatacenters
我希望这些信息可以帮到你。
答案 1 :(得分:0)
门户网站显示标准价格,标准价格是locationGroupId字段为&#34; null&#34;或空的。
如果您有兴趣显示数据中心的确切价格,您应该在&#34; pricingLocationGroup&#34;:&#34; locations&#34;:&#34; region&#34;中显示价值。 :&#34;说明&#34;与所选数据中心相同。在这种情况下,请查看下面的价格,应该为数据中心显示此价格&#34; SYD01 - 悉尼&#34;和&#34; MEL01 - 墨尔本&#34;
{
"id": 83961,
"locationGroupId": 545,
"item": {
"description": "Citrix NetScaler VPX 10.1 1000Mbps Standard",
"id": 4423,
"keyName": "CITRIX_NETSCALER_VPX_10_1_1000MBPS_STANDARD"
} -
"pricingLocationGroup": {
"description": "Location Group 6"
"id": 545,
"locationGroupTypeId": 82,
"name": "Location Group 6",
"securityLevelId": null,
"locations": [2]
0: {
"id": 449612
"longName": "Sydney 1"
"name": "syd01"
"regions": [1]
0: {
"description": "SYD01 - Sydney"
"keyname": "SYDNEY"
"sortOrder": 78
}-
-
}-
1: {
"id": 449596
"longName": "Melbourne 1"
"name": "mel01"
"regions": [1]
0: {
"description": "MEL01 - Melbourne"
"keyname": "MELBOURNE"
"sortOrder": 48
}-
}
}
如果您不想显示数据中心的确切价格,您可以使用标准价格
此致