какие отношения между commons-httpclient и httpclient, оба из apache - PullRequest
30 голосов
/ 01 марта 2011

Любые отношения или различия между этими двумя библиотеками.

Ответы [ 2 ]

48 голосов
/ 01 марта 2011

Commons HttpClient - это старый проект, который создал HttpClient 3.1. Проект был включен в более крупный Apache HttpComponents проект, который произвел HttpClient 4.x .

Это довольно запутанно и немного политично, но старая библиотека Commons HttpClient теперь устарела.

14 голосов
/ 01 марта 2011

Любая ... разница между этими двумя библиотеками.

Да. Они очень разные. Имена пакетов для начала отличаются, и API 4.x намного богаче, чем API 3.x.

Для начала 4.x API HttpClient основаны на базовых библиотеках, которые предназначены для поддержки как клиентской, так и серверной сторон HTTP. Ядро предназначено для поддержки как блокирующих операций ввода-вывода, так и операций ввода-вывода, управляемых событиями, и последняя поддержка поддерживается API-интерфейсом AsyncHttpClient. Фреймворк также имеет много возможностей для управления файлами cookie, управления соединениями, аутентификации на стороне клиента, маршрутизации прокси, обработки ресурсов и потоковой передачи и т. Д.

К сожалению, все это означает, что код, созданный для использования HttpClient 3.x, потребует серьезной переписки для использования HttpClient 4.x. Я думаю, что это источник беспорядка и политики, на которые ссылается @skaffman.

Но для меня суть в том, что если вы разрабатываете новый проект, вы должны использовать HttpClient 4.x.

...