- PVSM.RU - https://www.pvsm.ru -
Привет! 
В 2009 году на «Rails Rumble» [1] Лехом Кульвером [2] и Крисом Ванстратом [3] был создан замечательный инструмент — Hurl.
Hurl [4] — это RoR приложение, предназначенное для того, чтоб посылать HTTP запросы. В целом, функциональность Hurl схожа с Curl. Идея и методы те же, но предназначение совсем другое.
К сожалению, , на котором стоит официальный Hurl очень нестабильный и медленный и не подходит для корпоративного использования. Технологии opensource дают нам возможность поднять свой экземпляр Hurl и даже сделать его лучше и удобнее.
Итак мы подняли и улучшили Hurl на своём
Чем же мы улучшили исходный код Hurl? Во-первых, в своем форке [7] sc-raptor [8] поправил баг с авторизацией на GitHub, которая нивкакую не хотела работать в исходном коде. Во-вторых, korjik [9] добавил в Hurl возможность укорачивать ссылки на Hurl с помощью bit.ly [10] на нашем пользовательском домене qblx.co. [11]
А теперь я подробнее опишу возможности Hurl. Основными важными деталями это приложения есть:
Итак, зайдя на главную страницу, не забудте залогиниться через GitHub.

После логина, вы увидите следующую картину: ваш GitHub логин авторизовал вас и дал возможность просматривать все сделанные вызовы

Далее, вы можете сделать самые простые запрсы, например к Яндекс API из статьи [12] zviryatko [13]. Сделаем обычный запрос:

Вот мы и получили перевод слова midnight — полночь.
Рассмотрим подробнее нижнюю часть странички:

Сейчас мы находимся на вкладке Response — Ответ. Тут мы можем увидеть ответ на сделанный нами запрос.
Нажав на Request — Запрос, мы видим запрос, который мы сделали в таком формате:

Самое интересное — ссылки "view full size [14]" и "permalink [15]". Зайдя по ним, вы сможете увидеть тело ответа ну и попробовать другие запросы.
Зайдя в свой «кабинет», вы найдете список выполненных вами хурлов:

Так же можно удалить то, что не нужно.
Как и где хранятся хурлы? В ruby приложении есть папка db. В ней в бинароном виде лежат «хурлы», «вьюхи» и юзеры:
$ ls -l db/hurls/ total 1028 drwxr-xr-x 48 hurl hurl 4096 2012-03-22 15:58 00 drwxr-xr-x 45 hurl hurl 4096 2012-03-22 16:46 01 drwxr-xr-x 49 hurl hurl 4096 2012-03-22 13:58 02 drwxr-xr-x 47 hurl hurl 4096 2012-03-22 14:11 03 drwxr-xr-x 44 hurl hurl 4096 2012-03-22 13:24 04 drwxr-xr-x 45 hurl hurl 4096 2012-03-23 10:38 05 drwxr-xr-x 48 hurl hurl 4096 2012-03-23 14:32 06 drwxr-xr-x 47 hurl hurl 4096 2012-03-23 08:34 07 drwxr-xr-x 50 hurl hurl 4096 2012-03-23 10:07 08 drwxr-xr-x 52 hurl hurl 4096 2012-03-21 10:45 09 drwxr-xr-x 43 hurl hurl 4096 2012-03-23 15:43 0a
Места занимается не очень много. За более чем полгода активного использования Hurl, наша команда сделала всего 152 Мб запросов:
$ du -h --max-depth=1 db/ 77M db/hurls 76M db/views 136K db/users 152M db/
Для чего вообще все это? Мы работаем над проектом, который очень активно использует API. Тестирование и написание документации заметно облегчается, если использовать Hurl. Так же, наглядные примеры для пользователей не только в Curl запросах и ответах, а и место, где вы сами наживую можете потрогать API.
В общем, Hurl явлется легким и удобным инструментом для создания и хранения HTTP запросов. Устанавливется как простейшее Rails приложение. Занимает немного места и системных ресурсов. Рекомендуем воспользоваться!
Автор: qbtarzan
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/amazon/4362
Ссылки в тексте:
[1] «Rails Rumble»: http://r09.railsrumble.com/entries?year=2009
[2] Лехом Кульвером: http://github.com/leah
[3] Крисом Ванстратом: http://github.com/defunkt
[4] Hurl: http://hurl.it
[5] хостинг: https://www.reg.ru/?rlink=reflink-717
[6] hurl.quickblox.com.: http://hurl.quickblox.com.
[7] своем форке: https://github.com/sc-raptor/hurl
[8] sc-raptor: https://github.com/sc-raptor
[9] korjik: http://habrahabr.ru/users/korjik/
[10] bit.ly: http://bit.ly
[11] qblx.co.: http://qblx.co.
[12] статьи: http://habrahabr.ru/post/138945/
[13] zviryatko: http://habrahabr.ru/users/zviryatko/
[14] view full size: http://qblx.co/GLAhjQ
[15] permalink: http://qblx.co/GOBxp9
Нажмите здесь для печати.