尝试在.NET站点中发送电子邮件时,遇到以下错误:
Mailbox unavailable. The server response was: No such user here
Run Code Online (Sandbox Code Playgroud)
如果代码尝试发送到不存在的电子邮件地址,是否会出现此错误?
谢谢.
我现在有关于此错误的更多信息.电子邮件来自'noreply @ [domain]'.当电子邮件发送到同一域的电子邮件地址时,电子邮件将毫无问题地发送.仅当发送到的电子邮件地址不是来自同一域时,才会显示此错误.我不知道这有用吗?
使用NetworkCredentials指定域时会发生这种情况.如果指定域(第三个参数),则只能发送到该域中的有效邮箱.保留它以便能够发送到域外的任何地址.
var client = new SmtpClient("smtp.server.com");
client.UseDefaultCredentials = false;
// The following will be able to send to anyone outside the domain.
client.Credentials = new NetworkCredential("user", "password");
// The following will only work when sending to users on server.com
client.Credentials = new NetworkCredential("user", "password", "server.com");
Run Code Online (Sandbox Code Playgroud)
这听起来像是 smtp 问题
尝试在 web.config 文件中设置您的 smtp 服务器信息,如下所示:
<system.net>
<mailSettings>
<smtp deliveryMethod="Network">
<network defaultCredentials="false" host="mail.blah.com" password="xxxx" port="25" userName="ex@blah.com"/>
</smtp>
</mailSettings>
</system.net>
Run Code Online (Sandbox Code Playgroud)
这是一篇不错的文章,详细介绍了 web.config 的这一部分以及如何使用后面的代码访问它:
| 归档时间: |
|
| 查看次数: |
9830 次 |
| 最近记录: |