1

opensslを使用してcurlを構築し、https接続を実行できます。

これで、curlがTLS接続を行うたびに、ハンドシェイクが再度行われます。

サーバーの以前の接続セッションIDを持つクライアントを利用し、次のリクエストで使用する必要があります。私は以下のオプションを試しましたが、それでもすべての試行に対して新しいハンドシェイクを作成します

  curl_easy_setopt(curl, CURLOPT_URL, https://127.0.0.1);
  curl_easy_setopt(curl, CURLOPT_WRITEHEADER, headerfile);

  curl_easy_setopt(curl,CURLOPT_SSLCERTTYPE,"PEM");


  curl_easy_setopt(curl,CURLOPT_SSLCERT,"My.cert");


  curl_easy_setopt(curl,CURLOPT_SSLKEYTYPE,"PEM");

  curl_easy_setopt(curl,CURLOPT_SSLKEY,"My.Key");


  curl_easy_setopt(curl,CURLOPT_CAINFO,".");


  curl_easy_setopt(curl,CURLOPT_SSL_VERIFYPEER,1L);

  curl_easy_setopt(curl, CURLOPT_COOKIEJAR,"seesion.id") 


  res = curl_easy_perform(curl);

  if(res != CURLE_OK)
{
    fprintf(stderr, "curl_easy_perform() failed: %s\n",


 }

curl_easy_cleanup(curl);

私はこれをcurlで試しましたが、できませんでした。cCURLでこれを行う方法を誰かが教えてくれますか..?

4

1 に答える 1

2

後続のリクエストで同じカールハンドルを再利用してください!それらの間でcurl_easy_cleanup(curl)とcurl_easy_init ()を再度呼び出さないでください。

于 2013-01-03T22:18:37.093 に答える