Как написать клиент протокола HTTP с использованием только методов GET и POST на C или C ++

0

Поэтому мой вопрос: как написать клиент http-протокола только с методами GET и POST на C или C++. Спасибо за ответ

  • 3
    получить библиотеку или прочитать RFC 2616 ...
Теги:
client
http
protocols

2 ответа

1

Зависит немного от уровня здравомыслия, которого вы ожидаете испытать в непредвиденном будущем.

Разумный/куриный выход - использовать библиотеку. Безумный/интересный способ - написать его с нуля. Под этим я подразумеваю, что это (должно быть), очень весело писать, но в то же время там много библиотек. Конечно, в образовательных целях забавный способ абсолютно выполним, и благодаря сообществу RFC в значительной степени приятная задача.

  1. Изучите сокеты.
  2. Прочтите спецификации HTTP 0.9 и HTTP 1.0 (RFC 1945) для развлечения.
  3. Прочитайте, перечитайте, перечитайте и реализуйте HTTP 1.1 (RFC 2616).

Какие части стандарта для реализации только для методов GET и POST лучше всего обнаружить, прочитав RFC. Короче - это много.

  • Правильно форматируйте запрос-URI.
  • Правильно обрабатывайте различные параметры запроса, такие как If- *, Range и т.д.
  • Правильно обрабатывайте перенаправления и т.д.
  • Правильно обрабатывайте даты, сжатие, фрагментированное сообщение, keep-alives, коды состояния,...
  • ... в конце большая часть стандарта покрыта.
1

Я рекомендую вам использовать libcurl. Если вы хотите создать собственную клиентскую библиотеку http, вы можете создать ее поверх Boost ASIO. Обе библиотеки отлично работают на платформах Linux и Windows.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню