C# AWS SES邮件服务问题:端口?超时?STARTTLS?
我正在尝试使用亚马逊的ses服务发送电子邮件:C# AWS SES邮件服务问题:端口?超时?STARTTLS?,c#,.net,asp.net-mvc,amazon-web-services,smtp,C#,.net,Asp.net Mvc,Amazon Web Services,Smtp,我正在尝试使用亚马逊的ses服务发送电子邮件: String username = "&&&&&&"; // Replace with your SMTP username. String password = "&&&&&&&"; // Replace with your SMTP password. String host = "xxxxxxxx";
String username = "&&&&&&"; // Replace with your SMTP username.
String password = "&&&&&&&"; // Replace with your SMTP password.
String host = "xxxxxxxx";
int port = 25;
String senderAddress = "xxxxxx";
String receiverAddress = inputEmail;
using (var client = new System.Net.Mail.SmtpClient(host, port))
{
client.Credentials = new System.Net.NetworkCredential(username, password);
client.EnableSsl = true;
String message = "Trucking On Demand received a request to reset the password for your account " + inputEmail + ".Your new password is: " + tempPassword;
client.Send
(
senderAddress, // Replace with the sender address.
inputEmail, // Replace with the recipient address.
message,
"This email was delivered through ****."
);
return Ok();
}
}
为什么我的请求超时了?我曾尝试过在互联网上搜索,但aws除了要求我启用TLS外,对这个问题没有明确的答案。我相信client.enablessl可以完成这项工作。我也需要处置我的客户吗?i、 e.client.dispose() 判断您是否应该连接到端口
587
判断您是否应该连接到端口587
您是真的超时了还是真的出错了?您在哪个地区配置了SES帐户?orhtej2提供的链接有一个很好的例子。我会从这个开始,然后回到你的代码。注意:您必须使用端口587。端口25不受支持。您实际上是在超时,还是遇到了真正的错误?您在哪个地区配置了SES帐户?orhtej2提供的链接有一个很好的例子。我会从这个开始,然后回到你的代码。注意:您必须使用端口587。端口25不受支持。这是正确答案,@Ackman。但是,如果代码在EC2中运行,那么您还需要从该代码运行的实例进行Internet访问。实际上,在文档中我发现,除非您明确地将其传达给aws ses团队,否则您无法向未注册的收件人发送电子邮件。这是正确的答案,@Ackman。但是,如果代码在EC2中,您还需要从运行该代码的实例进行Internet访问。实际上,在文档中我发现,除非您明确地将其传达给aws ses团队,否则您无法向未注册的收件人发送电子邮件。