Код: Выделить всё
import requests
url = "https://{SOMEURL}"
headers = {
'SOMECOMPANY-Client-Id': 'xxxxxxxxxxxxxxxxx',
'Accept': 'application/json'
}
response = requests.get(url, headers=headers, cert=('example-cert.pem', 'example-key.pem'))
print(f'Response {response.text}')
print(f'Response status code {response.status_code}')
Код: Выделить всё
var url = "https://{SOMEURL}";
var clientId = "xxxxxxxxxxxxxxxxx";
using var handler = new HttpClientHandler();
using var client = new HttpClient(handler);
// Load the certificate
var certificate = X509Certificate2.CreateFromPemFile("example-cert.pem", "example-key.pem");
handler.ClientCertificates.Add(certificate);
// Add headers
client.DefaultRequestHeaders.Add("SOMECOMPANY-Client-Id", clientId);
client.DefaultRequestHeaders.Add("Accept", "application/json");
// Make the GET request
var response = await client.GetAsync(url);
// Read response content
var responseContent = await response.Content.ReadAsStringAsync();
// Print the response
Console.WriteLine($"Response: {responseContent}");
Console.WriteLine($"Response status code: {(int)response.StatusCode}");
Аутентификация не удалась, поскольку платформа не поддерживает эфемерные
ключи.
Вот исключение:
Код: Выделить всё
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
---> System.Security.Authentication.AuthenticationException: Authentication failed because the platform does not support ephemeral keys.
---> System.ComponentModel.Win32Exception (0x8009030E): Geen referenties beschikbaar in het beveiligingspakket
at System.Net.SSPIWrapper.AcquireCredentialsHandle(ISSPIInterface secModule, String package, CredentialUse intent, SCH_CREDENTIALS* scc)
at System.Net.Security.SslStreamPal.AcquireCredentialsHandle(CredentialUse credUsage, SCH_CREDENTIALS* secureCredential)
at System.Net.Security.SslStreamPal.AcquireCredentialsHandleSchCredentials(SslAuthenticationOptions authOptions)
Подробнее здесь: https://stackoverflow.com/questions/778 ... net-for-we