Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Сети > ищу http библиотеку


Автор: GoldFinch 5.4.2010, 21:41
Ищу библиотеку для работы с http.
Желательно с простым удобным ОО интерфейсом, легковесную, совместимую с win32 и msvc. Нужна возможность работы с куками. Производительность не важна.

Использовать голые сокеты\голую boost.asio не хочу потому что надоело.

WinInet использвать не хочется, т.к. у него не очень удобный интерфейс, хотя он наверное самый легковесный, легковеснее только UrlDowndloadToFile (но она вроде бы не работает с куками).

Библиотеки входящие в Qt и wxWidgets не хочу, т.к. не хочу тянуть кучу зависимостей.

Скачал, посмотрел на libcURL - убогий Сшный интерфейс, неполная совместимость с win32, несразу компилится msvc (надо допиливать автолинкинг), не помогает парсить заголовки ответа.

Понравилась POCO - пока что ничего плохого о ней сказать не могу, разве что организация файлов в дистрибутиве неудобная - инклуды по 4м разным папкам раскиданы.

Какие есть еще библиотеки?

Автор: borisbn 5.4.2010, 22:54
Qt - куча зависимостей? QtCore4.dll и QtNetwork4.dll. Если это куча, то я с удовольствим послежу за топиком, чтобы узнать, какая библиотека требует меньше зависимостей
P.S. А обязательно C++ ?

Автор: GoldFinch 5.4.2010, 23:04
borisbn, WinInet  требует 0 зависимостей, и не занимает места.

алсо да, забыл сказать что мне надо чтобы библиотека была статически компилируемой, никаких shared длл.
С++ не обязательно, можно и С, но это должен быть очень хороший С ;)

Автор: cutwater 5.4.2010, 23:15
может быть стоит посмотреть в сторону curl ?

Автор: GoldFinch 5.4.2010, 23:25
cutwater, уже смотрел, см. 1й пост

Добавлено через 10 минут
посмотрел на cURL еще раз.
слишком уж там неудобный интерфейс %)

Автор: jonie 6.4.2010, 08:17
что насчет надстроек над curl врод http://sourceforge.net/projects/curlpp/ ?

Автор: GoldFinch 7.4.2010, 10:54
Цитата(jonie @  6.4.2010,  08:17 Найти цитируемый пост)
http://sourceforge.net/projects/curlpp/

этот проект выглядит мертвым, 
к тому же если и писать обертку - то свою, хорошую)

Автор: Alca 7.4.2010, 11:10
http://www.chilkatsoft.com - платные

Автор: just_geek 9.4.2010, 00:55
Есть еще http://www.webdav.org/neon/, только не знаю как у него с куками дела. А вообще libcurl хорош, конечно интерфейс у него специфический,  но к этому привыкаешь smile

Автор: RatHat 12.4.2010, 12:42
Цитата

Использовать голые сокеты\голую boost.asio не хочу потому что надоело.

GoldFinch, так а почему бы тогда не написать свою библиотеку один раз?smile

Автор: Alca 12.4.2010, 13:00
Цитата

GoldFinch, так а почему бы тогда не написать свою библиотеку один раз?

Я бы так и сделал (конечно, если есть время smile ). 

Автор: GoldFinch 18.4.2010, 19:34
RatHat, ага, а потом еще один раз, и еще раз... было уже =\

В конечном счете все равно придется писать обертку с нужным мне интерфейсом над какой-то библиотекой.

Автор: boostcoder 18.4.2010, 21:46
использую WebKit( http://webkit.org/ )(не кютешный).
но больше нравится curlpp. просто. ничего лишнего.

Автор: RatHat 19.4.2010, 12:34
GoldFinch, ну так напиши один раз полноценную либу со всем, что тебе надо, а потом юзай) Если реализация будет удачной, выложишь потом в сеть, и потом народ будет перечислять удобные решения: Boost.asio, libcurl, WinInet и GoldFinch WebLib =^_^=

Автор: featZima 21.4.2010, 10:33
libcurl очень самодостаточная и качественная вещь... прост в использовании single интерфейс + поддержка SSL (а вдруг когда нибудь понадобиться — не прийдётся переделывать весь проект)

Автор: chaos 21.4.2010, 11:48
http://sourceforge.net/projects/cpp-netlib/
http://pocoproject.org/

Добавлено @ 11:52
оффтоп
Цитата(borisbn @  5.4.2010,  19:54 Найти цитируемый пост)
QtCore4.dll и QtNetwork4.dll

позвольте ехидно поинтересоваться - что эти библиотеки нам дают?
1. Лишних 4 Мб?
2. ОО обертки над сокетами в виде QTcpSocket и тп?
3. Еще что-то

Если речь идет о QTcpSocket, то проще заюзать boost::asio и ничего тащить за собой не надо

Автор: GoldFinch 21.5.2010, 23:13
посмотрел презентацию cpp-netlib с бусткона, очень понравилась

http://www.boostcon.com/community/wiki/show/private/2010/, "Techniques in Flexible Header-Only C++ Network Library Implementations"
http://sourceforge.net/projects/cpp-netlib/

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)