2017-04-11 8 views
0

libcurlを使用してhttps要求(ssl)をAPIサーバー(Last.fm)に送信しようとしています。私はHTTP要求を送信しようとするとOKですが、https要求を送信するとそうではありません。失敗しましたSSL証明書の問題C

curl_easy_perform():グーグル、スタックオーバーフローの多くの検索後、私はインターネットからのこのサンプルコードを取得し、それを実行しようとするが、それは仕事と、このエラーが表示されないピア証明書が与えられたCAを認証できません証明書

サンプルコードがあります:

#include <stdio.h> 
#include <curl/curl.h> 
#include <string.h> 

int main() { 
CURLcode res; 
CURL *handle = curl_easy_init(); 
char url[] = "https://google.com"; 
curl_easy_setopt(handle, CURLOPT_URL, url); 
res=curl_easy_perform(handle); 
if(res==CURLE_OK) 
{ 
printf("OK"); 
} 

else{ 
printf("curl_easy_perform() failed: %s \n", curl_easy_strerror(res)); 
    } 

return 0; 

} 

PS:私は私の端末からgccでコンパイルしています。

答えて

0

libcurl4-gnutls-devを削除し、libcurl4-openssl-devをインストールすることで問題を解決しました。

sudo apt-get install libcurl4-openssl-dev 

この削除libcurl4-のgnutls-devを自動的に:あなたは同じ問題を抱えている場合は、ちょうどこのコマンドを必要としています。