c# - 使用gmail smtp通过代理发送电子邮件

标签 c# proxy gmail send smtpclient

尝试在我的 C# 应用程序中发送一些电子邮件。我在代理后面 - 这无疑是代码无法正常工作的原因。这是我目前所拥有的:

App.Config:

<system.net>
    <defaultProxy enabled="false">
      <proxy proxyaddress="xxx.xxx.xxx.xxx"/>
    </defaultProxy>
    <mailSettings>
      <smtp deliveryMethod="Network">
        <network host="smtp.gmail.com" port="587"/>
      </smtp>
    </mailSettings>
  </system.net>

代码:

        var username = "...";
        var password = "...";

        var fromEmail = "...";
        var toEmail = "...";
        var body = "Test email body";
        var subject = "Test Subject Email";

        var client = new SmtpClient("smtp.gmail.com", 587)
        {
            Credentials = new NetworkCredential(username, password),
            EnableSsl = true
        };

        try
        {
            client.Send(fromEmail, toEmail, subject, body);
        }
        catch (Exception e)
        {
            MessageBox.Show(e.Message);
        }  

每次我得到 System.Net.WebException: The remote name could not be resolved: 'smtp.gmail.com'

我从哪里/如何开始调试?

最佳答案

要调试涉及客户端服务器的任何事情,telnet 是您的 friend 。

尝试进入 DOS 并输入:

  telnet smtp.gmail.com 587

你应该看到:

  220 mx.google.com ESMTP 20sm950596pzk.3

如果你不这样做(你会收到“无法连接”或类似的消息),你肯定会被阻止。

如果您没有安装 telnet,您可以从“windows 组件”下的添加/删除程序中安装它。

关于c# - 使用gmail smtp通过代理发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2642894/

相关文章:

c# - 十进制数据类型在需要显示时去除尾随零

c# - 如何在 ASP.NET MVC 中使用多个表单元素

ios - 传送到应用商店时发生错误

android - 仅在 Android Gmail 中的电子邮件中出现空白。我该如何解决这个问题?

java - 通过 JavaMail 发送到 gmail 时的 TLS 问题

gmail - 通过Gmail REST API发送的电子邮件/草稿无法在新的Gmail UI中打开

c# - TextArea 从数据库中保存/检索

c# - LINQ:如何强制使用基于值的引用?

ios - JMeter - 如何将代理与安全移动页面一起使用?

python - 如何在python cgi文件中输出日志信息?