рдХрднреА-рдХрднреА рдПрдкреАрдЖрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдбреЗрдЯрд╛ рд╣реЛрддрд╛ рд╣реИред
рдЬреЗрдПрд╕рдУрдПрди рдпрд╛ рдПрдХреНрд╕рдПрдордПрд▓ рд▓реМрдЯрд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрдВрдбрдкреЙрдЗрдВрдЯ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдРрд╕рд╛ рдХреБрдЫ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛
http http://myapi.endpoint/ -q "abc/xyz"
рдФрд░ рдХреЗрд╡рд▓ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ "abc/xyz" рдЙрдк-рд╡реГрдХреНрд╖ рдХреЛ рджреЗрдЦрдиреЗ рдХреЛ рдорд┐рд▓рддрд╛ рд╣реИред
+1, рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛
рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдмрд╛рд╣рд░реА рдЙрдкрдХрд░рдг рд╣реИрдВ:
- JSON рдХреЗ рд▓рд┐рдП jq http://stedolan.github.io/jq/
- XML тАЛтАЛрдХреЗ рд▓рд┐рдП xmlstarlet рдФрд░ рдЕрдиреНрдп http://stackoverflow.com/a/15461774
рдХреНрдпреЛрдВ рди рдХреЗрд╡рд▓ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ?
@corpix рд▓рд┐рдВрдХ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж; рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рдерд╛ред
рдПрдХ рдПрдХреАрдХреГрдд рдЙрдкрдХрд░рдг рдХреЗ рдкрдХреНрд╖ рдФрд░ рд╡рд┐рдкрдХреНрд╖ рд╣реИрдВред рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдбрд╝ рдкрд░ рд╣реВрдБ; рдЕрдЧрд░ рд╡реЗ рдЪрд╛рд╣реЗрдВ рддреЛ рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкрд░ рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ред
рдореБрдЭреЗ рдбрд░ рд╣реИ рдХрд┐ рдпрд╣ рдЙрд╕ рджрд╛рдпрд░реЗ рд╕реЗ рдереЛрдбрд╝рд╛ рдмрд╛рд╣рд░ рд╣реИ рдЬрд┐рд╕реЗ httpie рдХреЛ рд╕рдорд░реНрдерди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред JSON рдХреЗ рд▓рд┐рдП jq
рдЙрддреНрдХреГрд╖реНрдЯ рд╣реИ рдФрд░ рдкрд╛рдЗрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ HTTPie рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдПрдХреАрдХреГрдд рд╣реИред рдореИрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЕрднреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╕рд╛рди рд╣реИ:
$ http httpbin.org/get
HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Connection: keep-alive
Content-Length: 398
Content-Type: application/json
Date: Wed, 07 Jan 2015 19:03:04 GMT
Server: gunicorn/18.0
Via: 1.1 vegur
{
"args": {},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Connect-Time": "1",
"Connection": "close",
"Host": "httpbin.org",
"Total-Route-Time": "1",
"User-Agent": "HTTPie/0.8.0",
"Via": "1.1 vegur",
"X-Request-Id": "2b2e03a0-0449-40f1-9027-73bfe9edf31f"
},
"url": "http://httpbin.org/get"
}
$ http httpbin.org/get | jq '.headers["User-Agent"]'
"HTTPie/0.8.0"
рдФрд░ рдЕрдиреНрдп рдЙрдкрдХрд░рдг рд╡рд┐рднрд┐рдиреНрди рд╕реНрд╡рд░реВрдкреЛрдВ рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИрдВред
jq рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдФрд░ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ; рдпрд╣ /var/run/docker.sock
рдкрд░ рдбреЙрдХрд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП httpie-unixsocket рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рд╣реЛрддрд╛ рд╣реИ:
$ http http+unix://%2Fvar%2Frun%2Fdocker.sock/info | jq .RegistryConfig
{
"InsecureRegistryCIDRs": [
"127.0.0.0/8"
],
"IndexConfigs": {
"docker.io": {
"Name": "docker.io",
"Mirrors": null,
"Secure": true,
"Official": true
}
},
"Mirrors": null
}
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдореБрдЭреЗ рдбрд░ рд╣реИ рдХрд┐ рдпрд╣ рдЙрд╕ рджрд╛рдпрд░реЗ рд╕реЗ рдереЛрдбрд╝рд╛ рдмрд╛рд╣рд░ рд╣реИ рдЬрд┐рд╕реЗ httpie рдХреЛ рд╕рдорд░реНрдерди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред JSON рдХреЗ рд▓рд┐рдП
jq
рдЙрддреНрдХреГрд╖реНрдЯ рд╣реИ рдФрд░ рдкрд╛рдЗрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ HTTPie рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдПрдХреАрдХреГрдд рд╣реИред рдореИрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдЕрднреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╕рд╛рди рд╣реИ:рдФрд░ рдЕрдиреНрдп рдЙрдкрдХрд░рдг рд╡рд┐рднрд┐рдиреНрди рд╕реНрд╡рд░реВрдкреЛрдВ рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИрдВред