Это код, который я использую. По какой-то причине он дает ошибку: «unauthorized». Любые идеи, почему это может произойти. Правильно настроен ключ Api.SendGrid V3 api с C# не может отправить почту
String apiKey = Environment.GetEnvironmentVariable("SG.7cSY-INMQnCwIzmonlgZvA.zNtNDycx......", EnvironmentVariableTarget.User);
dynamic sg = new SendGrid.SendGridAPIClient(apiKey, "https://api.sendgrid.com");
Email from = new Email("[email protected]");
String subject = "Hello World from the SendGrid CSharp Library";
Email to = new Email("[email protected]");
Content content = new Content("text/plain", "Textual content");
Mail mail = new Mail(from, subject, to, content);
//Email email = new Email("[email protected]");
//mail.Personalization[0].AddTo(email);
String ret = mail.Get();
string requestBody = ret;
Console.WriteLine(ret);
try
{
dynamic response = sg.client.mail.send.beta.post(requestBody: requestBody);
Console.WriteLine(response.StatusCode);
Console.WriteLine(response.Body.ReadAsStringAsync().Result);
Console.WriteLine(response.Headers.ToString());
}
catch (Exception ex) {
Console.WriteLine("SendGrid Error: {0}",ex.Message);
}
Итак, поправьте меня, если я Я ошибаюсь: 'EnvironmentVariable' и' AppSettings' очень похожи. Однако с помощью 'EnvironmentVariable' вы можете хранить различные API-ключи (разные конфигурации) для разных пользователей. –
Я не знаком с AppSettings. Для EnvironmentVariable я понимаю, что вы можете либо получать значения из пространства текущего пользователя или системы. В приведенном выше коде я предполагаю, что вы настраиваете переменную среды в своем пользовательском пространстве. –