2017-12-20 1 views
2

Postman을 사용하여 HTTPS REST GET 요청을 성공적으로 호출 할 수 있습니다.C#에서 HTTPS GET REST 요청이 RestSharp와 작동하지 않습니다.

그러나 다음 코드와 함께 RestShap (C#, .NET)을 사용하여 동일한 HTTPS REST 요청을 호출하려고 할 때. 예기치 않은 오류가 보내기에 발생

var client = new RestClient("https://testsite.com:7000/abcd/1.0/xyx/games/getgames"); 
client.Authenticator = new HttpBasicAuthenticator("myusername", "mypassword"); 
var request = new RestRequest(Method.GET); 
IRestResponse response = client.Execute(request); 

나는 기본 연결이 닫혔습니다 다음과 같은 예외

을 얻고있다.

내가 Fiddler를 사용하여 요청을 캡처하려했는데, 이상한 점은 요청 유형이 HTTP라는 것입니다. 피들러에서

오류가

fiddler.network.https이> testsite.com에 핸드 셰이크 HTTPS입니다 (# 45) 에 실패했습니다. System.IO.IOException 전송에서 데이터를 읽을 수 없습니다. 연결 : 기존 연결이 원격 호스트에 의해 강제로 닫혔습니다. <는 기존의 연결이 강제로 당신은 HTTPS 요청을 소비하는 SSL 인증서가 필요

+0

를 사용하여 요청에 SSL 인증서를 추가 할 수 있습니다 원격 호스트에 의해 폐쇄되었다 대한 HTTPS 해독인가 옵션이 피 들러에서 켜져 있습니까? – MarkovskI

답변

0

, 당신은 다음 코드

X509Certificate2 certificates = new X509Certificate2(); 
certificates.Import(...); 

client.ClientCertificates = new X509CertificateCollection(){certificate}); 
+0

restsharp는 URL의 HTTPS 부분을 식별하여 인증서를 자동으로 처리합니까? –

+0

SSL 인증서없이 시도하지 않았습니다. –

+0

RestSharp를 사용하기위한 인증서를 어떻게 만들 수 있습니까? 창을 만들었습니까? 아니면 창문에 설치해야합니까? –

관련 문제