curl查询参数获取

时间:2015-09-22 18:29:42

标签: curl get

我收到此CURL命令的错误,但同样适用于Chrome DHC App。我在这里错过了什么

[root@host125]# curl -sk -X 'GET' -H 'X-Auth-Token: [REDACTED]' -H 'Content-type: application/json' https://10.1.1.132/rest/rm-central/v1/recovery-sets?query="volumeType EQ 'vvol'"
{"badRequest": {"message": "QueryFilter Error :: Given Query Filter syntax 'query=' is not valid ", "code": 400}}
[root@host125]#
[root@host125]#
[root@host125]#

3 个答案:

答案 0 :(得分:2)

您的网址似乎有误:

https://10.1.1.132/rest/rm-central/v1/recovery-sets?query="volumeType EQ 'vvol'"

尤其是query=部分。

引号应该是这样的:

'https://10.1.1.132/rest/rm-central/v1/recovery-sets?query=foobar'

或使用"双引号"

答案 1 :(得分:1)

下面的CURL语法解决了我的问题:

# curl -k -G -X 'GET' -H 'X-Auth-Token: 5127af39b7584d8c8897a0cad55accdc' -H 'Content-type: application/json' https://10.1.1.132/rest/rm-central/v1/recovery-sets -d "query=\"volumeType%20EQ%20'vvol'\""

答案 2 :(得分:1)

使用curl的--data-urlencode选项。

var=volumeType EQ 'vvol'
curl -sSLG "https://10.1.1.132/rest/rm-central/v1/recovery-sets" --data-urlencode "query=$var"