如何解决CURL GET转义双引号
我正在尝试发送GET请求以检索JSON结果。
这个完美地为我工作:
curl -i -H "Accept: */*" -X GET 'http://10.50.227.58:30000/api/v1/query?query=sum(container_memory_working_set_bytes)by(container_name,pod_name)&start=1598860800&end=1598860859';echo
但是,我需要的是下面的内容,无论我尝试了什么(例如,使用%22),无论如何失败。
curl -i -H "Accept: */*" -X GET 'http://10.50.227.58:30000/api/v1/query?query=sum(container_memory_working_set_bytes{container_name!="POD"})by(container_name,pod_name)&start=1598860800&end=1598860859';echo
有人可以帮助我吗?
非常感谢。
解决方法
您必须使用--data-urlencode
对URL进行编码curl -G -X GET \
--data-urlencode 'query=sum(container_memory_working_set_bytes{container_name!="POD"})by(container_name,pod_name)' \
--data-urlencode 'start=1598860800' \
--data-urlencode 'end=1598860859' \
http://10.50.227.58:30000/api/v1/query
,
尝试:
\"
或
'\"'
示例:
$ echo 'hello'\"'world'
hello"world
或者先用双引号转义,然后在内部用单引号
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。