홈>
RestSharp와 함께 매우 간단한 웹 요청이 있습니다 :
var client = new RestClient("https://website.net");
var request = new RestRequest("/process", Method.GET);
request.AddParameter("cmd", "execute");
IRestResponse response = client.Execute(request);
var content = response.Content;
Console.WriteLine("Response: " + content);
이것은 오류 메시지를 반환합니다 :
The request was aborted: Could not create SSL/TLS secure channel
세가지 :
<올>인증서에서 AES 128과 함께 TLS 1.2를 사용하므로 RC4로 인한 오류와 관련이 없습니다.
이것은 Visual Studio 2015의 로컬 Win 10 컴퓨터에 대상 프레임 워크가 .NET 4.5.2입니다.
이 오류가 발생하는 이유는 무엇입니까?
수정 :
기본 System.Net 및 WebRequest 클래스를 사용하도록 코드를 변경하고 다음 줄을 추가하면 :
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
에서 제안한대로 여기 에서 작동합니다. 어떤 이유로 RestSharp가 잘못된 프로토콜을 사용하고 있다고 생각하십니까?
- 답변 # 1
- 답변 # 2
이 줄을 이동하십시오 : ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
이 줄 앞에 : WebRequest request = WebRequest.Create (url);도움이됩니다.
관련 자료
- excel - 직원이 일한 날에 대한 부울 항목을 만들 수있는 VBA 함수가 있습니까?
- 여러 데이터 유형을 허용하는 Swagger Inspector에서 요청을 생성하려면 어떻게해야합니까?
- go - Resty를 사용하여 Golang에서 자동화 API POST 테스트 요청을 생성하는 방법
- flutter - API에 어떻게 요청할 수 있습니까?
- javascript - 함수를 사용하여 개체에 새 개체를 만들려면 어떻게해야합니까?
- openssl - PHP는 파일 서명/인증서에 인증서 서명 요청을 만듭니다
- azure - 서비스 버스 토픽 작성 요청에서 예외가 발생 함
- java - Spring-boot에서 REST API 요청 당 고유 ID를 만드는 방법은 무엇입니까?
- python - 두 개의 파이 게임 디스플레이를 어떻게 만들 수 있습니까? 내가 할 수 없다면 어떻게 파이 게임의 두 인스턴스를 만들 수 있을까?
- 우편 배달부와 함께 302 GET 요청을 만드는 방법은 무엇입니까?
- c# - webrequest를 만드는"SSL/TLS 보안 채널을 만들 수 없습니다"를 수정할 수 없습니다
.NET 4.5에서는 TLS 1.2를 사용할 수 있지만 기본적으로 활성화되어 있지 않습니다.
그렇습니다. 1.2가 필요한 경우 .NET 런타임에 어떤 방식 으로든 지정해야합니다.
참고로 : .NET 4.7에서 .NET은 OS의 기본 SSL/TLS 버전을 사용합니다 (대부분의 최신 OS는 기본적으로 TLS 1.2를 갖습니다) <시간>다른 좋은 답변 :
.NET 4.5의 기본 보안 프로토콜