2017-01-08 6 views
0

Python newbie here!認証用証明書を使用してPythonでGET呼び出しを行う方法

私は以下のコードをC#で書いていますが、私は同じ機能をPythonで実現したいと思います。

string serviceURL = "https://someurl"; 
       HttpWebRequest request = (HttpWebRequest)WebRequest.Create(serviceURL); 
       request.Method = "GET"; 
       string path = @"C:\mycert.cer"; 
       X509Certificate Cert = X509Certificate.CreateFromCertFile(path); 

       Logger.Error(path); 

       request.ClientCertificates.Add(Cert); 

       HttpWebResponse WebResp = request.GetResponse() as HttpWebResponse; 

       var encoding = ASCIIEncoding.ASCII; 
       string responseText; 
       StreamReader reader = new System.IO.StreamReader(WebResp.GetResponseStream(), encoding); 
       using (reader = new System.IO.StreamReader(WebResp.GetResponseStream(), encoding)) 
       { 
        responseText = reader.ReadToEnd(); 
       } 

Googleで検索しましたが、適切な例は見つかりませんでした。

答えて

0

私は[要求] [1]ライブラリを見ることをお勧めします - それはとても便利でクールです。

>>> import requests 
>>> r = requests.get('https://api.github.com/events') 
>>> print(r.status_code) 
200 
print(r.text) 
# ..... here response body goes ... 

あなたは、信頼できるCAの証明書を持つCA_BUNDLEファイルまたはディレクトリへのパスを確認渡すことができます:

>>> requests.get('https://github.com', verify='/path/to/certfile') 
+0

私はあなたの例を使用する場合、私はこのエラーを取得します。 "requests.exceptions.SSLError:不明なエラー(_ssl.c:2826)" –

+0

あなたは何を得ますか? –

+0

内部企業のURLです –

関連する問題