Использование HttpClient и HttpWebRequest для HTTPS TLS1.2C#

Место общения программистов C#
Ответить
Anonymous
 Использование HttpClient и HttpWebRequest для HTTPS TLS1.2

Сообщение Anonymous »

В консольном приложении при попытке подключиться к конечной точке https, настроенной с помощью TLS 1.2.
В C#
При использовании HttpClient я получаю ответ об успехе от конечной точки

Код: Выделить всё

       HttpClient httpClient = new HttpClient();

//specify to use TLS 1.2 as default connection
System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls | SecurityProtocolType.Ssl3;

httpClient.BaseAddress = new Uri("HTTPSENDPOINT");
httpClient.DefaultRequestHeaders.Accept.Clear();
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

var content = new StringContent("POSTDATA");
var task = httpClient.PostAsync("/Token", content);

task.Wait();

Console.WriteLine(task.Result.Content.ReadAsStringAsync().Result.ToString());
Но при использовании HttpWebRequest

Код: Выделить всё

       var request = (HttpWebRequest)WebRequest.Create("HTTPSENDPOINT/Token");
var postData = "POSTDATA";
var data = Encoding.ASCII.GetBytes(postData);

System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls | SecurityProtocolType.Ssl3;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;

using (var stream = request.GetRequestStream()) // Getting Error in GetRequestStream() method call
{
stream.Write(data, 0, data.Length);
}

var response = (HttpWebResponse)request.GetResponse();

var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
Я получаю ошибку ниже

Запрос был прерван: не удалось создать безопасный канал SSL/TLS.

Пожалуйста, подскажите мне; что я делаю неправильно при использовании HttpWebRequest?

Подробнее здесь: https://stackoverflow.com/questions/573 ... tps-tls1-2
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»