2016-08-16 10 views
0

Azure Resource Manager APIを使用してリソースを検索しようとしています。クエリ文字列で指定Azure Resource Managerリソースを持つInvalidFilter API

GET /subscriptions/xxx/resources?$filter=startswith(name,%20'web')&api-version=2015-01-01 

無効$フィルタ'startswith(name, 'web')':まず、私はこれを試してみました。詳細: 'サポートされていないフィルタ関数が見つかりました:' startswith 'プロパティ名: '名前'。サポートされている機能:クエリ文字列で指定

GET /subscriptions/xxx/resources?$filter=substringof('web',%20name)%20eq%20true&api-version=2015-01-01 

無効$フィルタ'substringof('web', name) eq true': 'substringof'」

その後、私はこれを試してみました。詳細: '$ filter stringでサポートされていないトークンが見つかりました。'

私は、ODataの専門家ではないので、私は私の構文が間違っているのかはわからない、または私は本当にこのAPIでサポートされていない何かをしようとしている場合。

+0

チェックされたOData v2とv3の仕様では、構文は大丈夫です。OData v4は少し異なりますが、関数は部分文字列と呼ばれます。とにかくブール値を返すようにsubstringofが想定されているので、無意味なので、* eq true *を残してみてください。 – juunas

+0

@juunasうん、それは* eq true *だった、私はFind-AzureRmResource -ResourceNameContains' PowerShellコマンドのトレースを実行することでそれを理解した。 – BenV

答えて

0

クエリがなければなりません:

GET /subscriptions/xxx/resources?$filter=substringof('web',%20name)&api-version=2015-01-01 

は真のEQを出したままにしておきます。 v2とv3のodataプロトコルの公式の例の一部として見ることができますが、Azure APIはこれをサポートしていないようです。

関連する問題