Я використовував HttpClient
для здійснення дзвінків WebApi за допомогою C #. Здається акуратним і швидким способом порівняно з WebClient
. Однак я застряг під час Https
дзвінків.
Як можна зробити код нижче, щоб Https
телефонувати?
HttpClient httpClient = new HttpClient();
httpClient.BaseAddress = new Uri("https://foobar.com/");
httpClient.DefaultRequestHeaders.Accept.Clear();
httpClient.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/xml"));
var task = httpClient.PostAsXmlAsync<DeviceRequest>(
"api/SaveData", request);
EDIT 1: Код, що знаходиться вище, чудово працює для здійснення дзвінків http. Але коли я міняю схему на https, вона не працює. Ось отримана помилка:
Базове з'єднання було закрито: Не вдалося встановити довірчі відносини для захищеного каналу SSL / TLS.
EDIT 2: Зміна схеми на https - це: перший крок.
Як надати сертифікат та відкритий / приватний ключ разом із запитом C #.
new Uri("https://foobar.com/");