Статус: Новичок
Группы: Участники
Зарегистрирован: 26.08.2016(UTC) Сообщений: 5 Откуда: spb
|
Автор: olin А как вы осуществляете отправку? симлинком сделал ссылку на либу с /opt/cprocsp/lib/amd64/libcpcurl.so.4.2.0 далее в с++ Код:
int countSendByte = 0;
int debug_callback(CURL *handle,
curl_infotype type,
char *data,
size_t size,
void *userptr)
{
countSendByte += size;
printf("send %d\n", countSendByte);
};
........................
CURL *curl;
CURLcode res;
struct curl_httppost *formpost = NULL;
struct curl_httppost *lastptr = NULL;
curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "param1", CURLFORM_COPYCONTENTS, "aaa", CURLFORM_END);
curl_formadd(&formpost, &lastptr, CURLFORM_COPYNAME, "file", CURLFORM_FILE, "file.trext", CURLFORM_END);
.......................
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://site............................");
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "CERT_SHA1_HASH_PROP_ID:CERT_SYSTEM_STORE_CURRENT_USER:MY");
curl_easy_setopt(curl, CURLOPT_SSLCERT, "e80ed2c1ea2fdf04a1fadd2c11f9890a89a77c88");
curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, debug_callback);
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);
res = curl_easy_perform(curl);
.......................
}
.......................
тоже самое на php Код:$ch = curl_init();
................
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSLCERTTYPE, 'CERT_SHA1_HASH_PROP_ID:CERT_SYSTEM_STORE_CURRENT_USER:MY');
curl_setopt($ch, CURLOPT_SSLCERT, 'e80ed2c1ea2fdf04a1fadd2c11f9890a89a77c88');
curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, "file=@file.txt¶m1=aaa");
curl_setopt($ch, CURLOPT_NOPROGRESS, false);
curl_setopt($ch, CURLOPT_PROGRESSFUNCTION, function($resource,$dltotal, $dlnow, $ultotal, $ulnow){
print ' downlodTotal=' . $dltotal . ' download=' . $dlnow . ' uploadTotal=' . $ultotal . ' upload=' . $ulnow . PHP_EOL;
});
................
$strContent = curl_exec($ch);
и в обоих случаях при отправки данных более 27 кб процесс зависает на ~17 кб на файлы меньшего размера (например 25kb) то все ок
|