问题标签 [smtpclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
845 浏览

google-app-engine - 发送程序化电子邮件

我希望从我的网站以编程方式发送电子邮件。例如,如果人们注册了他们的电子邮件地址,我想给他们发送电子邮件以确认他们的电子邮件地址。为此,我需要使用电子邮件发送工具并插入 smtp 服务。在过去(大约 7 年前)我使用过 Jmail,但是,我不确定今天使用的最佳服务是什么,以及垃圾邮件过滤器是如何发展起来的!

我有三个具体问题:

  1. 我使用哪种服务以编程方式发送电子邮件(例如,PhpMail、Jmail 等)是否重要?如果是这样,您会推荐哪些工具?

  2. 我应该如何托管这个工具?我计划发送大量电子邮件(数千到数十万)。使用 google-app-engine 邮件服务执行此操作是否有意义,或者我应该将其托管在自己的服务器上(例如,拥有自己的 SMTP 服务器)?

  3. 我不希望我的电子邮件被发送到垃圾邮件文件夹,如何确保用户收到电子邮件?

谢谢!

0 投票
3 回答
1874 浏览

asp.net - 并非所有在 ASP.NET MVC 中使用 SmtpClient 发送的电子邮件都会被送达。为什么?如何解决?

这是设置:

  1. 我有一个从任务调度程序调用的通知控制器 1x/天
  2. action 方法提取了 300 个以上的地址,遍历它们并使用 SmtpClient 类向每个收件人发送一封单独​​的电子邮件。

据我所知,该过程运行良好,无一例外……除了并非所有电子邮件都已送达。有人对发生的事情以及如何解决有任何想法吗?

这是代码:

更新:

在发送电子邮件之间添加暂停可以解决问题。但为什么这行得通?有没有更好的方法(例如使用 Async())可以更好地解决问题???

更新代码...

0 投票
2 回答
3762 浏览

c# - 使用 SmtpClient 发送带有查询字符串的 url

这里的基本问题:我正在使用 .NET 框架(3.5)的默认 SmtpClient 发送电子邮件。正文类型是 HTML (IsBodyHtml = true) 在正文中,我在查询字符串中添加了一个带有两个参数的 url,如下所示:

这个 get 被编码为:

当做一个简单的Request["var2"]我得到'null'。我应该怎么做才能正确编码邮件中的&符号?

0 投票
1 回答
1508 浏览

c# - c# .net 3.5 System.Net.Mail

我没主意了!如果我这样做:

它有效,但我在 Outlook 中看到了 html 标签。

如果我做:

我没有收到电子邮件!

我检查了 Exchange 邮件跟踪,邮件不存在。

我检查了 smtp 日志,我没有看到我的消息!

我检查了垃圾邮件过滤器,没有消息!

我检查了垃圾邮件文件夹,没有!

奇怪的是,如果我将 strTo 更改为外部电子邮件,它就可以工作!!!!

在这里发疯:-(

0 投票
8 回答
21561 浏览

c# - 使用 SmtpClient 发送邮件时“服务器违反协议”疑难解答

SmtpClient我想向班级发送邮件。

这是我使用的代码:

但它总是抛出一个异常:

服务器违反了协议 服务器响应是:UGFzc3dvcmQ6

我找不到原因。请,如果有人遇到过这样的事情,请告诉我该怎么做。

0 投票
1 回答
1104 浏览

asp.net - 使用 System.Net.Mail.SmtpClient 发送 MailMessage:为什么邮件正文附加为文本文件?

我正在使用 System.Net.Mail.SmtpClient 发送邮件:

电子邮件以文本邮件的形式接收(如预期的那样,主题为“aaa”,正文为“bbb”),但该邮件还附加了一个文本文件:文件名“aaa”和内容“bbb”。

为什么要附加此文本文件,如何避免?

谢谢你的帮助!

更新

忽略这个问题:这显然是我用来接收测试邮件的邮件客户端的临时问题。重新启动邮件客户端后问题消失了。

0 投票
6 回答
18078 浏览

.net - 如何在发送邮件之前验证 smtp 凭据?

我需要SmtpClient在发送邮件之前验证实例中设置的用户名和密码。使用此代码:

如何验证凭据标识的用户是否被允许连接和发送邮件?

0 投票
2 回答
2686 浏览

.net - SmtpClient (.NET) 不按照 RFC 2047 对邮件标头进行编码

我正在使用 .NETSmtpClient发送主题可能包含 ASCII 范围之外的字符的电子邮件。RFC 2047定义了电子邮件文本在包含特殊字符时应如何编码。以下是电子邮件标题中的主题示例:

Subject: Votre enregistrement numéro 123

在编码为 ISO-8859-1 之后,这应该变成:

Subject: =?iso-8859-1?Q?Votre=20enregistrement=20num=E9ro=20123?=

其中所有特殊字符,包括?, =(和其他字符)和空格,都使用=xx转义序列进行编码。

但是,当我查看SmtpClient生成的内容时,我发现它没有转义空格,这意味着邮件客户端收到了这个标头:

Subject: =?iso-8859-1?Q?Votre enregistrement num=E9ro 123?=

这意味着编码在(我的阅读)RFC 2047 方面被破坏了。一些电子邮件客户端对这种不正确的编码非常满意(实际上,其中大多数,包括 Outlook 和 gmail),但有一个(wanadoo.fr)以原始格式显示标题。这不是用户应该看到的:-(

此问题是否有任何已知的解决方法?

注意: .NET 4.0 实现SmtpClient按预期对主题进行编码,产生此输出,这是正确的:

Subject: =?Windows-1252?Q?Votre_enregistrement_num=E9ro_123?=

0 投票
5 回答
107887 浏览

c# - 在 .net 中使用 SmtpClient 发送邮件

我无法使用 smtp 客户端发送邮件。这是代码:

问题是当我在 ASP.NET 应用程序中使用此代码时,我没有收到任何邮件。在 asp.net 中,我将邮件地址更改为 NetworkCredential 中给出的用户名,我收到邮件。

但是在 C# windows 应用程序中,即使发件人的电子邮件地址无效,我也可以收到电子邮件。

0 投票
4 回答
21506 浏览

c# - 将已发送的 MailMessage 放入“已发送文件夹”

我正在使用 Exchange Server 发送带有 SmtpClient 的 MailMessages(已成功传递),但希望我发送的电子邮件转到我发送它们的电子邮件地址的已发送文件夹(没有发生)。

是否有我缺少的配置可以确保我从“fromaddress@blah.com”发送的所有电子邮件都到达他们的发送文件夹?