{"id":306055,"date":"2020-06-28T15:00:58","date_gmt":"2020-06-28T15:00:58","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=306055"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=306055","title":{"rendered":"\u0427\u0442\u043e JavaScript-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0443 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u043d\u0430\u0442\u044c \u043e Curl"},"content":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/508592\/\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/sk\/tr\/ed\/sktredxwjam2cbh2wpvulpjis5i.png\"><\/p>\n<p>  \u0414\u043e\u0431\u0440\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u0443\u0442\u043e\u043a, \u0434\u0440\u0443\u0437\u044c\u044f!<\/p>\n<p>  \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e \u0412\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/thecodebarbarian.com\/what-javascript-developers-should-know-about-curl.html\" rel=\"nofollow\">\u00abWhat JavaScript Developers Should Know About Curl\u00bb<\/a> \u0430\u0432\u0442\u043e\u0440\u0430 Valery Karpov.<\/p>\n<p>  <a href=\"https:\/\/curl.haxx.se\/\" rel=\"nofollow\">Curl<\/a> \u2014 \u044d\u0442\u043e \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. Curl \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432, \u043e\u0434\u043d\u0430\u043a\u043e \u043a\u0430\u043a Node.js-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0432\u044b, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0431\u0443\u0434\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u043a\u0438 http-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043a RESTful API.<\/p>\n<p>  \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f curl \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u0438\u0437 383 \u0444\u043b\u0430\u0433\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u043d\u0435\u0439 \u043e\u0447\u0435\u043d\u044c \u0442\u0440\u0443\u0434\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0442\u043e, \u0447\u0442\u043e \u0438\u0449\u0435\u0448\u044c. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0445\u043e\u0447\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u0432\u0430\u043c\u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u043c\u0438 \u043c\u043d\u043e\u0439 \u0448\u0430\u0431\u043b\u043e\u043d\u0430\u043c\u0438. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0435\u0440\u0432\u0438\u0441 <a href=\"http:\/\/httpbin.org\/\" rel=\"nofollow\">httpbin.org<\/a>.<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<h3>\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 http-\u0437\u0430\u043f\u0440\u043e\u0441\u0430<\/h3>\n<p>  \u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0443 \u0432\u0430\u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d curl, \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <code>curl --version<\/code>.<\/p>\n<pre><code class=\"javascript\">$ curl --version curl 7.58.0 (x86_64-pc-linux-gnu) libcurl\/7.58.0 OpenSSL\/1.1.1 zlib\/1.2.11 libidn2\/2.0.4 libpsl\/0.19.1 (+libidn2\/2.0.4) nghttp2\/1.30.0 librtmp\/2.3 Release-Date: 2018-01-24 Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp smb smbs smtp smtps telnet tftp  Features: AsynchDNS IDN IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy PSL  <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c <code>curl url<\/code>. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 GET-\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u043a <code>https:\/\/httpbin.org\/get?answer=42<\/code> \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c <code>curl https:\/\/httpbin.org\/get?answer=42<\/code>.<\/p>\n<pre><code class=\"javascript\">$ curl https:\/\/httpbin.org\/get?answer=42 {   &quot;args&quot;: {     &quot;answer&quot;: &quot;42&quot;   },    &quot;headers&quot;: {     &quot;Accept&quot;: &quot;*\/*&quot;,      &quot;Host&quot;: &quot;httpbin.org&quot;,      &quot;User-Agent&quot;: &quot;curl\/7.58.0&quot;,      &quot;X-Amzn-Trace-Id&quot;: &quot;Root=1-5ee8d737-b39c6a466892725bbb52b916&quot;   },    &quot;origin&quot;: &quot;69.84.111.39&quot;,    &quot;url&quot;: &quot;https:\/\/httpbin.org\/get?answer=42&quot; } <\/code><\/pre>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0433\u043e \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u043f\u0440\u043e\u0441\u0430 curl \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0442\u0435\u043b\u043e http-\u043e\u0442\u0432\u0435\u0442\u0430. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c curl \u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0432\u0435\u0441\u044c \u043e\u0442\u0432\u0435\u0442, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0444\u043b\u0430\u0433 -i.<\/p>\n<pre><code class=\"javascript\">$ curl -i https:\/\/httpbin.org\/get?answer=42 HTTP\/2 200  date: Tue, 16 Jun 2020 14:30:57 GMT content-type: application\/json content-length: 801 server: istio-envoy access-control-allow-origin: * access-control-allow-credentials: true x-envoy-upstream-service-time: 2  {   &quot;args&quot;: {     &quot;answer&quot;: &quot;42&quot;   },    &quot;headers&quot;: {     &quot;Accept&quot;: &quot;*\/*&quot;,      &quot;Content-Length&quot;: &quot;0&quot;,      &quot;Host&quot;: &quot;httpbin.org&quot;,      &quot;User-Agent&quot;: &quot;curl\/7.58.0&quot;,      &quot;X-Amzn-Trace-Id&quot;: &quot;Root=1-5ee8d7a1-cb3954c09299eb9e0dff70a6&quot;,      &quot;X-B3-Parentspanid&quot;: &quot;dffc55451e64b5fc&quot;,      &quot;X-B3-Sampled&quot;: &quot;0&quot;,      &quot;X-B3-Spanid&quot;: &quot;8e233a863fb18b6c&quot;,      &quot;X-B3-Traceid&quot;: &quot;45bd12a9067fb5c0dffc55451e64b5fc&quot;,      &quot;X-Envoy-External-Address&quot;: &quot;10.100.91.201&quot;,      &quot;X-Forwarded-Client-Cert&quot;: &quot;By=spiffe:\/\/cluster.local\/ns\/httpbin-istio\/sa\/httpbin;Hash=c1ff14671b3e24ee794f9a486570abf8ccc9d622846611d3f91a322db4d480cd;Subject=\\&quot;\\&quot;;URI=spiffe:\/\/cluster.local\/ns\/istio-system\/sa\/istio-ingressgateway-service-account&quot;   },    &quot;origin&quot;: &quot;69.84.111.39,10.100.91.201&quot;,    &quot;url&quot;: &quot;http:\/\/httpbin.org\/get?answer=42&quot; } <\/code><\/pre>\n<p>  \u042d\u0442\u043e \u043f\u043e\u043b\u043d\u044b\u0439 http-\u043e\u0442\u0432\u0435\u0442. \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u043c\u0438 \u043e\u0442\u0432\u0435\u0442\u0430 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u0438 \u043e\u0442 <code>date:<\/code> \u0434\u043e <code>x-envoy-upstream-service-time:<\/code>.<\/p>\n<h3>\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0444\u0430\u0439\u043b\u043e\u0432<\/h3>\n<p>  <a href=\"https:\/\/ru.wikipedia.org\/wiki\/Wget\" rel=\"nofollow\">Wget<\/a> \u2014 \u0441\u0430\u043c\u044b\u0439 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0444\u0430\u0439\u043b\u043e\u0432 \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438. \u041e\u043d \u0432\u0445\u043e\u0434\u0438\u0442 \u0432 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0430 \u0434\u0438\u0441\u0442\u0440\u0443\u0431\u0443\u0442\u0438\u0432\u043e\u0432 Linux. \u041e\u0434\u043d\u0430\u043a\u043e \u0432 OSX \u0435\u0433\u043e \u043d\u0435\u0442.<\/p>\n<p>  \u041a\u043e\u043c\u0430\u043d\u0434\u0430 <code>wget url<\/code> \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0435 <code>curl -OL url<\/code>. \u041e\u043f\u0446\u0438\u044f <code>-\u041e<\/code> \u2014 \u044d\u0442\u043e \u043e\u043f\u0446\u0438\u044f <code>--remote-name<\/code>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0433\u043e\u0432\u043e\u0440\u0438\u0442 curl \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0442\u0435\u043b\u043e \u043e\u0442\u0432\u0435\u0442\u0430 \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435. \u041e\u043f\u0446\u0438\u044f <code>-L<\/code> \u0433\u043e\u0432\u043e\u0440\u0438\u0442 curl \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u043c.<\/p>\n<p>  \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0438\u0436\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043e \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0441 Unsplash, \u0435\u0433\u043e URL \u2014 <code>https:\/\/images.unsplash.com\/photo-1506812574058-fc75fa93fead<\/code>.<\/p>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/st\/d5\/9p\/std59pn6evuv0tgad69t6lsopvw.jpeg\"><\/p>\n<p>  \u0414\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u044d\u0442\u043e\u0433\u043e \u0438\u0437\u043e\u0431\u044e\u0440\u0430\u0436\u0435\u043d\u0438\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<pre><code class=\"javascript\">$ curl -OL https:\/\/images.unsplash.com\/photo-1506812574058-fc75fa93fead   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                  Dload  Upload   Total   Spent    Left  Speed 100 12.1M  100 12.1M    0     0  3927k      0  0:00:03  0:00:03 --:--:-- 3927k <\/code><\/pre>\n<p>  \u041e\u043f\u0446\u0438\u044f <code>-O<\/code> \u0433\u043e\u0432\u043e\u0440\u0438\u0442 curl \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e <code>\/<\/code> \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430. \u0412 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u043e \u0432 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c <code>photo-1506812574058-fc75fa93fead<\/code>. \u0414\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u043d\u0438 \u0444\u0430\u0439\u043b\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043e\u043f\u0446\u0438\u044e <code>-\u043e<\/code> (\u0441\u0442\u0440\u043e\u0447\u043d\u0430\u044f \u0431\u0443\u043a\u0432\u0430 \u00ab\u043e\u00bb).<\/p>\n<pre><code class=\"javascript\">$ curl -o miami-beach.jpg https:\/\/images.unsplash.com\/photo-1506812574058-fc75fa93fead   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                  Dload  Upload   Total   Spent    Left  Speed 100 12.1M  100 12.1M    0     0  6083k      0  0:00:02  0:00:02 --:--:-- 6083k $ ls -l miami-beach-jpg -rw-rw-r-- 1 val val 12788445 Jun 16 11:03 miami-beach.jpg <\/code><\/pre>\n<p>  <\/p>\n<h3>\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0430<\/h3>\n<p>  \u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u0437\u0430\u043f\u0440\u043e\u0441 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u0438 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u043a RESTful API. \u0414\u043b\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u043b\u0430\u0433 <code>-H<\/code>. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0432\u0430\u0448 \u043a\u043b\u044e\u0447 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 (API key) <code>my-secret-token<\/code>, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u0432 http-\u0437\u0430\u043f\u0440\u043e\u0441 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<pre><code class=\"javascript\">$ curl -H &quot;Authorization: my-secret-token&quot; https:\/\/httpbin.org\/get {   &quot;args&quot;: {},    &quot;headers&quot;: {     &quot;Accept&quot;: &quot;*\/*&quot;,      &quot;Authorization&quot;: &quot;my-secret-token&quot;,      &quot;Host&quot;: &quot;httpbin.org&quot;,      &quot;User-Agent&quot;: &quot;curl\/7.58.0&quot;,      &quot;X-Amzn-Trace-Id&quot;: &quot;Root=1-5ee8e1a5-a3aa30e0765a7980b04ca4a0&quot;   },    &quot;origin&quot;: &quot;69.84.111.39&quot;,    &quot;url&quot;: &quot;https:\/\/httpbin.org\/get&quot; } <\/code><\/pre>\n<p>  \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e <code>httpbin.org<\/code> \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438 http-\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 \u0442\u0435\u043b\u0435 \u043e\u0442\u0432\u0435\u0442\u0430 \u0432 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0435 <code>headers<\/code>.<\/p>\n<p>  Curl \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044e \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u0444\u043b\u0430\u0433\u0430 <code>-u<\/code>. \u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043c\u044b \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u0437\u0430\u043f\u0440\u043e\u0441 \u0441 \u0438\u043c\u0435\u043d\u0435\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f <code>user<\/code> \u0438 \u043f\u0430\u0440\u043e\u043b\u0435\u043c <code>pass<\/code>:<\/p>\n<pre><code class=\"javascript\">$ curl -i -u &quot;user:pass&quot; https:\/\/httpbin.org\/basic-auth\/user\/pass HTTP\/2 200  date: Tue, 16 Jun 2020 15:18:45 GMT content-type: application\/json content-length: 47 server: istio-envoy access-control-allow-origin: * access-control-allow-credentials: true x-envoy-upstream-service-time: 1  {   &quot;authenticated&quot;: true,    &quot;user&quot;: &quot;user&quot; } <\/code><\/pre>\n<p>  \u0412\u043e\u0442 \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u0440\u0438 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0435 \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u043c\u0435\u043d\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438\u043b\u0438 \u043f\u0430\u0440\u043e\u043b\u044f:<\/p>\n<pre><code class=\"javascript\">$ curl -i -u &quot;user:wrongpass&quot; https:\/\/httpbin.org\/basic-auth\/user\/pass HTTP\/2 401  date: Tue, 16 Jun 2020 15:18:51 GMT content-length: 0 server: istio-envoy www-authenticate: Basic realm=&quot;Fake Realm&quot; access-control-allow-origin: * access-control-allow-credentials: true x-envoy-upstream-service-time: 12 <\/code><\/pre>\n<p>  <\/p>\n<h3>\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0433\u043e JSON<\/h3>\n<p>  \u0424\u043b\u0430\u0433 <code>-X<\/code> \u0433\u043e\u0432\u043e\u0440\u0438\u0442 curl, \u043a\u0430\u043a\u043e\u0439 \u043c\u0435\u0442\u043e\u0434 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c: PUT, POST \u0438 \u0442.\u0434. \u041f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e curl \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043c\u0435\u0442\u043e\u0434 GET, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0438\u0441\u0430\u0442\u044c <code>curl -X GET<\/code> \u043d\u0435 \u043d\u0443\u0436\u043d\u043e.<\/p>\n<p>  \u0424\u043b\u0430\u0433 <code>-X<\/code> \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 \u0444\u043b\u0430\u0433\u043e\u043c <code>-d<\/code>, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u043c \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0442\u0435\u043b\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0430. \u0412 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043e \u043a\u0430\u043a \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u0442\u044c POST-\u0437\u0430\u043f\u0440\u043e\u0441, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0439 json:<\/p>\n<pre><code class=\"javascript\">$ curl -X POST -d '{&quot;answer&quot;:42}' https:\/\/httpbin.org\/post {   &quot;args&quot;: {},    &quot;data&quot;: &quot;&quot;,    &quot;files&quot;: {},    &quot;form&quot;: {     &quot;{\\&quot;answer\\&quot;:42}&quot;: &quot;&quot;   },    &quot;headers&quot;: {     &quot;Accept&quot;: &quot;*\/*&quot;,      &quot;Content-Length&quot;: &quot;13&quot;,      &quot;Content-Type&quot;: &quot;application\/x-www-form-urlencoded&quot;,      &quot;Host&quot;: &quot;httpbin.org&quot;,      &quot;User-Agent&quot;: &quot;curl\/7.58.0&quot;,      &quot;X-Amzn-Trace-Id&quot;: &quot;Root=1-5ee8e3fd-8437029087be44707bd15320&quot;,      &quot;X-B3-Parentspanid&quot;: &quot;2a739cfc42d28236&quot;,      &quot;X-B3-Sampled&quot;: &quot;0&quot;,      &quot;X-B3-Spanid&quot;: &quot;8bdf030613bb9c8d&quot;,      &quot;X-B3-Traceid&quot;: &quot;75d84f317abad5232a739cfc42d28236&quot;,      &quot;X-Envoy-External-Address&quot;: &quot;10.100.91.201&quot;,      &quot;X-Forwarded-Client-Cert&quot;: &quot;By=spiffe:\/\/cluster.local\/ns\/httpbin-istio\/sa\/httpbin;Hash=ea8c3d70befa0d73aa0f07fdb74ec4700d42a72889a04630741193548f1a7ae1;Subject=\\&quot;\\&quot;;URI=spiffe:\/\/cluster.local\/ns\/istio-system\/sa\/istio-ingressgateway-service-account&quot;   },    &quot;json&quot;: null,    &quot;origin&quot;: &quot;69.84.111.39,10.100.91.201&quot;,    &quot;url&quot;: &quot;http:\/\/httpbin.org\/post&quot; } <\/code><\/pre>\n<p>  \u041e\u0431\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u0447\u0442\u043e \u043f\u043e-\u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430 <code>Content-Type<\/code> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <code>application\/x-www-form-urlencoded<\/code>. \u0414\u043b\u044f json \u044d\u0442\u043e \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435\u0432\u0435\u0440\u043d\u044b\u043c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f <code>Content-Type<\/code> \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u043b\u0430\u0433 <code>-H<\/code>:<\/p>\n<pre><code class=\"javascript\">$ curl -X POST -d '{&quot;answer&quot;:42}' -H &quot;Content-Type: application\/json&quot; https:\/\/httpbin.org\/post {   &quot;args&quot;: {},    &quot;data&quot;: &quot;{\\&quot;answer\\&quot;:42}&quot;,    &quot;files&quot;: {},    &quot;form&quot;: {},    &quot;headers&quot;: {     &quot;Accept&quot;: &quot;*\/*&quot;,      &quot;Content-Length&quot;: &quot;13&quot;,      &quot;Content-Type&quot;: &quot;application\/json&quot;,      &quot;Host&quot;: &quot;httpbin.org&quot;,      &quot;User-Agent&quot;: &quot;curl\/7.58.0&quot;,      &quot;X-Amzn-Trace-Id&quot;: &quot;Root=1-5ee8e45e-ad875af4f83efd4379b86c34&quot;,      &quot;X-B3-Parentspanid&quot;: &quot;5f4f33d1c5ea13aa&quot;,      &quot;X-B3-Sampled&quot;: &quot;0&quot;,      &quot;X-B3-Spanid&quot;: &quot;a062c9bf2ebfd4bd&quot;,      &quot;X-B3-Traceid&quot;: &quot;44aa8d62412ae34d5f4f33d1c5ea13aa&quot;,      &quot;X-Envoy-External-Address&quot;: &quot;10.100.86.47&quot;,      &quot;X-Forwarded-Client-Cert&quot;: &quot;By=spiffe:\/\/cluster.local\/ns\/httpbin-istio\/sa\/httpbin;Hash=2f0b3331fe4d512975b4b82583a55dd5d1196023d0dfce9e0abed246991c5b67;Subject=\\&quot;\\&quot;;URI=spiffe:\/\/cluster.local\/ns\/istio-system\/sa\/istio-ingressgateway-service-account&quot;   },    &quot;json&quot;: {     &quot;answer&quot;: 42   },    &quot;origin&quot;: &quot;69.84.111.39,10.100.86.47&quot;,    &quot;url&quot;: &quot;http:\/\/httpbin.org\/post&quot; } <\/code><\/pre>\n<p>  <\/p>\n<h3>\u041e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 PUT-\u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0435\u0433\u043e JSON-\u0444\u0430\u0439\u043b<\/h3>\n<p>  \u0424\u043b\u0430\u0433 <code>-d<\/code> \u0442\u0430\u043a\u0436\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432.<\/p>\n<p>  \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043c, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0444\u0430\u0439\u043b <code>data.js<\/code>, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0442\u0430\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435:<\/p>\n<pre><code class=\"javascript\">{&quot;answer&quot;: 42} <\/code><\/pre>\n<p>  \u0414\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 PUT-\u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0441 \u044d\u0442\u0438\u043c \u0444\u0430\u0439\u043b\u043e\u043c \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u0442\u0435\u043b\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0440\u0438\u0441\u0432\u043e\u0438\u0442\u044c \u0444\u043b\u0430\u0433\u0443 <code>-d<\/code> \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <code>@data.json<\/code>. \u041f\u0440\u0435\u0444\u0438\u043a\u0441 <code>@<\/code> \u0433\u043e\u0432\u043e\u0440\u0438\u0442 curl \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0442\u0435\u043b\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 <code>data.json<\/code>:<\/p>\n<pre><code class=\"javascript\">$ curl -X PUT -d '@data.json' -H &quot;Content-Type: application\/json&quot; https:\/\/httpbin.org\/put {   &quot;args&quot;: {},    &quot;data&quot;: &quot;{\\&quot;answer\\&quot;:42}&quot;,    &quot;files&quot;: {},    &quot;form&quot;: {},    &quot;headers&quot;: {     &quot;Accept&quot;: &quot;*\/*&quot;,      &quot;Content-Length&quot;: &quot;13&quot;,      &quot;Content-Type&quot;: &quot;application\/json&quot;,      &quot;Host&quot;: &quot;httpbin.org&quot;,      &quot;User-Agent&quot;: &quot;curl\/7.58.0&quot;,      &quot;X-Amzn-Trace-Id&quot;: &quot;Root=1-5ee8e745-37c4ef06326b7b4354a16b94&quot;,      &quot;X-B3-Parentspanid&quot;: &quot;a4f8f91f4f1b051e&quot;,      &quot;X-B3-Sampled&quot;: &quot;0&quot;,      &quot;X-B3-Spanid&quot;: &quot;a018b1a3fcebdc68&quot;,      &quot;X-B3-Traceid&quot;: &quot;7b48b01dc3f632eea4f8f91f4f1b051e&quot;,      &quot;X-Envoy-External-Address&quot;: &quot;10.100.91.201&quot;,      &quot;X-Forwarded-Client-Cert&quot;: &quot;By=spiffe:\/\/cluster.local\/ns\/httpbin-istio\/sa\/httpbin;Hash=6035260d9d551af6c1907270653214e8d3195abbdd19078c1c84fd9a4106f260;Subject=\\&quot;\\&quot;;URI=spiffe:\/\/cluster.local\/ns\/istio-system\/sa\/istio-ingressgateway-service-account&quot;   },    &quot;json&quot;: {     &quot;answer&quot;: 42   },    &quot;origin&quot;: &quot;69.84.111.39,10.100.91.201&quot;,    &quot;url&quot;: &quot;http:\/\/httpbin.org\/put&quot; } <\/code><\/pre>\n<p>  <\/p>\n<h3>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h3>\n<p>  \u0420\u0435\u0437\u044e\u043c\u0438\u0440\u0443\u044f, \u0432\u043e\u0442 \u043e\u043f\u0446\u0438\u0438 curl, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u044f \u043d\u0430\u0445\u043e\u0436\u0443 \u0441\u0430\u043c\u044b\u043c\u0438 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u043c\u0438:<\/p>\n<ul>\n<li><code>-X<\/code> \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u043c\u0435\u0442\u043e\u0434 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <code>curl -X POST url<\/code><\/li>\n<li><code>-d<\/code> \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0442\u0435\u043b\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 \u0432\u0438\u0434\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 PUT \u0438 POST-\u0437\u0430\u043f\u0440\u043e\u0441\u0430\u0445. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 <code>@<\/code> \u0434\u043b\u044f \u0438\u0437\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 \u0444\u0430\u0439\u043b\u0430<\/li>\n<li><code>-H<\/code> \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <code>curl -H &quot;Authorization: my-secret-token&quot; url<\/code><\/li>\n<li><code>-u<\/code> \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438<\/li>\n<li><code>-O<\/code> \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u0442\u0435\u043b\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 \u0444\u0430\u0439\u043b<\/li>\n<li><code>-i<\/code> \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u043e\u043b\u043d\u044b\u0439 \u043e\u0442\u0432\u0435\u0442, \u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438<\/li>\n<\/ul>\n<p>  Curl \u2014 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 API \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u0442\u043e\u0433\u043e, \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0439 \u044d\u0442\u043e API \u0438\u043b\u0438 API, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442\u0435. \u0414\u043b\u044f \u0431\u044b\u0441\u0442\u0440\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f curl \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u043b\u0443\u0447\u0448\u0435, \u0447\u0435\u043c Axios \u0432 Node.js \u0438\u043b\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0432 Postman, \u0435\u0441\u043b\u0438 \u0432\u044b \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 \u0438\u0445 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u043e\u043c.<\/p>\n<p>  \u0411\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u044e \u0437\u0430 \u043f\u043e\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u043e\u043d\u043e \u0431\u044b\u043b\u043e \u043f\u043e\u0442\u0440\u0430\u0447\u0435\u043d\u043e \u043d\u0435 \u0437\u0440\u044f.<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/508592\/\"> https:\/\/habr.com\/ru\/post\/508592\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html post__text_v1\" id=\"post-content-body\" data-io-article-url=\"https:\/\/habr.com\/ru\/post\/508592\/\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/sk\/tr\/ed\/sktredxwjam2cbh2wpvulpjis5i.png\"><\/p>\n<p>  \u0414\u043e\u0431\u0440\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0441\u0443\u0442\u043e\u043a, \u0434\u0440\u0443\u0437\u044c\u044f!<\/p>\n<p>  \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e \u0412\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/thecodebarbarian.com\/what-javascript-developers-should-know-about-curl.html\" rel=\"nofollow\">\u00abWhat JavaScript Developers Should Know About Curl\u00bb<\/a> \u0430\u0432\u0442\u043e\u0440\u0430 Valery Karpov.<\/p>\n<p>  <a href=\"https:\/\/curl.haxx.se\/\" rel=\"nofollow\">Curl<\/a> \u2014 \u044d\u0442\u043e \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 HTTP-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. Curl \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u0432, \u043e\u0434\u043d\u0430\u043a\u043e \u043a\u0430\u043a Node.js-\u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0432\u044b, \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u0431\u0443\u0434\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0435\u0433\u043e \u0434\u043b\u044f \u043e\u0442\u043f\u0440\u0430\u043a\u0438 http-\u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043a RESTful API.<\/p>\n<p>  \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f curl \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043f\u0435\u0440\u0435\u0447\u0435\u043d\u044c \u0438\u0437 383 \u0444\u043b\u0430\u0433\u043e\u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u043d\u0435\u0439 \u043e\u0447\u0435\u043d\u044c \u0442\u0440\u0443\u0434\u043d\u043e \u043d\u0430\u0439\u0442\u0438 \u0442\u043e, \u0447\u0442\u043e \u0438\u0449\u0435\u0448\u044c. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0445\u043e\u0447\u0443 \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u0441 \u0432\u0430\u043c\u0438 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0447\u0430\u0441\u0442\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u043c\u0438 \u043c\u043d\u043e\u0439 \u0448\u0430\u0431\u043b\u043e\u043d\u0430\u043c\u0438. \u0414\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0435\u0440\u0432\u0438\u0441 <a href=\"http:\/\/httpbin.org\/\" rel=\"nofollow\">httpbin.org<\/a>.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-306055","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/306055","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=306055"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/306055\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=306055"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=306055"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=306055"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}