Skip to content
garevna edited this page Jan 13, 2019 · 2 revisions

🎓 curl

Утилита командной строки для передачи данных по URL

🔗usage

Синтаксис:

$ curl опции ссылка

Получение данных по url

По умолчанию содержимое запрошенного ресурса будет отправлено на стандартный вывод

☕ 1️⃣

$ curl https://github.com

☕ 2️⃣

$ curl curl https://garevna.github.io/js-samples/js/index08.js


🎓 Опции


-O

Сохранить загруженный файл в текущую папку под тем же именем, что и на сервере

☕ 3️⃣

$ curl -O https://garevna.github.io/js-samples/js/index08.js

После выполнения этой операции в текущей папке появится новый файл index08.js


-o

Сохранить загруженный файл в текущую папку под указанным именем

☕ 4️⃣

$ curl -o index-1.html https://garevna.github.io/js-samples/index.html

После выполнения этой операции в текущей папке появится новый файл index-1.html


Далее воспользуемся бесплатным тестовым сервером

для изучения работы curl с различными опциями

с HTTP-глаголами GET и POST

Вам следует зарегистрироваться на этом ресурсе, чтобы получить собственный "туалет" для экспериментов

В дальнейших упражнениях garevna нужно будет заменить на идентификатор вашего "туалета"


-d

Эта опция нужна для отправки данных на сервер методом POST

☕ 5️⃣

$ curl -d "name=garevna&subject=testing" http://ptsv2.com/t/garevna/post

Обратите внимание на заголовки ( Headers )

Content-Type   application/x-www-form-urlencoded

Мы отправили данные формы как пары ключ=значение, соединенные знаком &:

"name=garevna&subject=testing"

Сервер автоматически распознал тип контента и установил значение заголовка Content-Type


-H

Эта опция позволяет устанавливать заголовки запроса

Например, мы можем передать в POST-запросе информацию о типе передаваемого контента

Заголовком по умолчанию для простого POST-запроса будет

Content-Type: application / x-www-form-urlencoded

Изменим это значение

Укажем, что мы передаем данные в json-формате:

☕ 6️⃣

$ curl -d '{ name:Irina }' -H 'Content-Type: application/json' http://ptsv2.com/t/garevna/post

мы передали простой объект { name:Irina }

в заголовке

Content-Type: application/json'

мы указали, что данные передаются в формате json-строки


☕ 7️⃣

Отправим ранее сохраненный файл index-1.html на сервер http://ptsv2.com,

указав в заголовке Content-Type, что мы отправляем обычный текстовый файл ( text/plain ):

curl -d @index-1.html -H 'Content-Type: text/plain' http://ptsv2.com/t/garevna/post


-u

Для авторизации запроса на сервере нужно передать с запросом имя пользователя и пароль

curl поддерживает login и пароль в URL-адресах:

$ curl http://name:passwd@machine.domain/full/path/to/file

С помощью опции -u ( --user ) можно передать логин:пароль отдельно:

$ curl --user garevna:garevna -d @index-1.html -H 'Content-Type: text/plain' http://ptsv2.com/t/garevna/post

© Irina H.Fylyppova 2018
Использование данных материалов или любой их части коммерческими школами ( курсами ) является нарушением авторских прав


Новая версия


1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19

Занятие 1

⤵️

Занятие 2

⤴️ ⤵️

Занятие 3

⤴️ ⤵️

Занятие 4

⤴️ ⤵️

Занятие 5

⤴️ ⤵️

Занятие 6

⤴️ ⤵️

Занятие 7

⤴️ ⤵️

Занятие 8

⤴️ ⤵️

Занятие 9

⤴️ ⤵️

Занятие 10

⤴️ ⤵️

Занятие 11

⤴️ ⤵️

Занятие 12

⤴️ ⤵️

Занятие 13

⤴️ ⤵️

Занятие 14

⤴️ ⤵️

Занятие 15

⤴️ ⤵️

Занятие 16

⤴️ ⤵️

Занятие 17

⤴️ ⤵️

Занятие 18

⤴️ ⤵️

Занятие 19

⤴️ ⤵️

⤴️

ico20 Дополнительно
dir-20 Справочная инфо

Clone this wiki locally