2017-11-09 6 views
1

일반 (특정 데이터 센터와 관련 없음)의 성능 블록 저장소 가격 항목을 얻으려고합니다. 이것들은 locationGroupId가 공백이나 null로 설정되어있는 것을 볼 수 있습니다 만, objectFilter를 처리 할 수없는 것처럼 보입니다. 쿼리는 아무 것도 반환하지 않습니다. locationGroupId 필터를 생략하면 특정 위치 및 위치 이외의 특정 가격을 모두 포함하는 결과가 표시됩니다.가격을 검색 할 때 "is null"을 사용하면 작동하지 않습니다.

GET /rest/v3.1/SoftLayer_Product_Package/759/getItemPrices.json?objectMask=mask[locationGroupId,id,categories,item]&objectFilter={"itemPrices":{"categories":{"categoryCode":{"operation":"performance_storage_space"}},"item":{"keyName":{"operation":"$=GBs"}},"locationGroupId":{"operation":"is null"}}}

나는 오브젝트 필터, 어떤 아이디어에 문제가 추측 무엇입니까? 내가 locationGroupId 509 필터링 경우

그것은 작동 :

/rest/v3.1/SoftLayer_Product_Package/759/getItemPrices.json?objectMask=mask[locationGroupId,id,categories,item]&objectFilter={"itemPrices":{"categories":{"categoryCode":{"operation":"performance_storage_space"}},"item":{"keyName":{"operation":"$=GBs"}},"locationGroupId":{"operation":509}}}

답변

0

두 번째는 내가 할 "컬 -sg을"명령을 사용하는 것이 었했다하면서 첫 번째 쿼리가 작동하지 않은 이유 의뢰. 그 동안 {} [] 문자를 이스케이프해야 할 필요가 없지만 URL의 다른 문자를 올바르게 이스케이프 처리하지 않습니다 (예 : "null"). "is % 20null"로 변경하면 문제가 해결됩니다.

다른 사람들이이 문제를 겪을 가능성이 높습니다. 답변으로 게시하고 있습니다.