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

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

2 ответа

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

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

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

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

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

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