Пример HTTP-клиента на win32

Я хотел разработать один пример HTTP на платформе win32, который будет асинхронным.

Я новичок в программировании на win32. Что такое платформа API и библиотеки win32 для отправки и получения HTTP-запросов? Я использую Windows XP с VS 2005.

Если есть какой-либо пример, укажите ссылку на него.

12 голосов | спросил Vinayaka Karjigi 10 J000000Friday09 2009, 09:30:11

4 ответа


0

Window HTTP Services "предоставляет разработчикам интерфейс прикладного программирования (API) клиента HTTP для отправки запросов по протоколу HTTP на другие серверы HTTP. "

API HTTP-сервера "позволяет приложениям общаться по HTTP без использования Microsoft Internet Information Server (IIS) "

ответил Brandon E Taylor 10 J000000Friday09 2009, 09:44:49
0

Обычно я бы рекомендовал что-нибудь кроссплатформенное, например cURL, POCO, Qt или Asio (довольно современно и красиво) Однако вот пример Windows, использующий IXMLHTTPRequest:

// TODO: error handling

#include <atlbase.h>
#include <msxml6.h>

HRESULT hr;
CComPtr<IXMLHTTPRequest> request;

hr = request.CoCreateInstance(CLSID_XMLHTTP60);
hr = request->open(
    _bstr_t("GET"),
    _bstr_t("https://www.google.com/images/srpr/logo11w.png"),
    _variant_t(VARIANT_FALSE),
    _variant_t(),
    _variant_t());
hr = request->send(_variant_t());

// get status - 200 if succuss
long status;
hr = request->get_status(&status);

// load image data (if url points to an image)
VARIANT responseVariant;
hr = request->get_responseStream(&responseVariant);
IStream* stream = (IStream*)responseVariant.punkVal;
CImage image = new CImage();
image->Load(stream);
stream->Release();
ответил Peter Tseng 12 FebruaryEurope/MoscowbWed, 12 Feb 2014 08:36:38 +0400000000amWed, 12 Feb 2014 08:36:38 +040014 2014, 08:36:38
0

Boost Asio - хороший синхронный асинхронная библиотека, которая имеет все необходимое для HTTP-серверов /клиентов. Он содержит несколько обширных примеров на HTTP-серверах и соответствующих клиентах. Теперь, если вы новичок в C ++, эта библиотека может быть немного загадочной. Вы всегда можете взглянуть на MSDN, если вы хотите больше с нуля.

ответил DeusAduro 10 J000000Friday09 2009, 09:47:03
0

Это пример

https://github.com/pedro-vicente/lib_netsockets

Легкая оболочка C ++ для сокетов POSIX и Winsock

Он использует HTTP GET для получения файла с веб-сервера, и сервер, и файл являются параметрами командной строки. Удаленный файл сохраняется в локальной копии.

ответил Pedro Vicente 15 AM00000080000005131 2016, 08:28:51

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132