curl_easy_recv - receives raw data on an "easy" connection
Синтаксис[]
CURLcode curl_easy_recv( CURL * curl , void * buffer , size_t buflen , size_t * n );
Описание[]
Получает сырые данные из открытого соединения. Можно использовать вместе с curl_easy_send для реализации своих протоколов с использованием libcurl. Эта функциональность может быть полезна, если вы используете прокси и шифрование : libcurl позаботится о proxy negotiation и установлении соединения.
buffer - указатель на ваш буфер, куда будут помещены данные.
buflen - максимальная вместимость буфера.
В n будет возвращено количество полученных байт.
Перед вызовом curl_easy_perform, выставьте CURLOPT_CONNECT_ONLY в 1. Заметьте, что curl_easy_recv не работает с соединениями, созданными с этим параметром.
You must ensure that the socket has data to read before calling curl_easy_recv, otherwise the call will return CURLE_AGAIN - the socket is used in non-blocking mode internally. Use curl_easy_getinfo(3) with CURLINFO_LASTSOCKET to obtain the socket; use your operating system facilities like select(2) to check if it has any data you can read.
Возвращаемое значение[]
В случае успеха, вернет CURLE_OK, поместив полученные данные в буфер.
Если новые данные не поступали в соединение, функция вернет CURLE_AGAIN. Используйте ваши средства, чтобы подождать, пока данные не будут готовы и повторите запрос.
В противном случае функция вернет error code.
См. также[]
curl_easy_setopt curl_easy_perform curl_easy_getinfo curl_easy_send
Это незавершенная статья Она содержит неполную информацию Вы можете помочь Libcurlru вики, дополнив её. |