标签: smtp

使用SMTP从Python发送邮件

我正在使用以下方法使用SMTP从Python发送邮件.这是正确的使用方法还是我遗失了?

from smtplib import SMTP
import datetime

debuglevel = 0

smtp = SMTP()
smtp.set_debuglevel(debuglevel)
smtp.connect('YOUR.MAIL.SERVER', 26)
smtp.login('USERNAME@DOMAIN', 'PASSWORD')

from_addr = "John Doe <john@doe.net>"
to_addr = "foo@bar.com"

subj = "hello"
date = datetime.datetime.now().strftime( "%d/%m/%Y %H:%M" )

message_text = "Hello\nThis is a mail from your server\n\nBye\n"

msg = "From: %s\nTo: %s\nSubject: %s\nDate: %s\n\n%s" 
        % ( from_addr, to_addr, subj, date, message_text )

smtp.sendmail(from_addr, to_addr, msg)
smtp.quit()
Run Code Online (Sandbox Code Playgroud)

python smtp

107
推荐指数
7
解决办法
19万
查看次数

将MemoryStream中的文件附加到C#中的MailMessage

我正在编写一个程序来将文件附加到电子邮件中.目前我正在使用FileStream磁盘保存文件,然后我使用

System.Net.Mail.MailMessage.Attachments.Add(
    new System.Net.Mail.Attachment("file name")); 
Run Code Online (Sandbox Code Playgroud)

我不想将文件存储在磁盘中,我想将文件存储在内存中,并从内存流传递给它Attachment.

c# email smtp memorystream

105
推荐指数
5
解决办法
15万
查看次数

从C#发送附带附件的电子邮件,附件在Thunderbird中作为第1.2部分到达

我有一个C#应用程序,它使用SMTP通过Exchange 2007服务器通过电子邮件发送Excel电子表格报告.这些适用于Outlook用户,但对于Thunderbird和Blackberry用户,附件已重命名为"第1.2部分".

我发现这篇文章描述了这个问题,但似乎没有给我一个解决方法.我无法控制Exchange服务器,因此无法在那里进行更改.我能在C#端做什么吗?我尝试过对身体使用短文件名和HTML编码,但两者都没有区别.

我的邮件发送代码就是这样:

public static void SendMail(string recipient, string subject, string body, string attachmentFilename)
{
    SmtpClient smtpClient = new SmtpClient();
    NetworkCredential basicCredential = new NetworkCredential(MailConst.Username, MailConst.Password);
    MailMessage message = new MailMessage();
    MailAddress fromAddress = new MailAddress(MailConst.Username);

    // setup up the host, increase the timeout to 5 minutes
    smtpClient.Host = MailConst.SmtpServer;
    smtpClient.UseDefaultCredentials = false;
    smtpClient.Credentials = basicCredential;
    smtpClient.Timeout = (60 * 5 * 1000);

    message.From = fromAddress;
    message.Subject = subject;
    message.IsBodyHtml = false;
    message.Body = body;
    message.To.Add(recipient);

    if …
Run Code Online (Sandbox Code Playgroud)

c# email smtp attachment

100
推荐指数
4
解决办法
28万
查看次数

SmtpException:无法从传输连接中读取数据:net_io_connectionclosed

我正在使用该SmtpClient库使用以下内容发送电子邮件:

SmtpClient client = new SmtpClient();
client.Host = "hostname";
client.Port = 465;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.EnableSsl = true;
client.Credentials = new NetworkCredential("User", "Pass);
client.Send("from@hostname", "to@hostname", "Subject", "Body");
Run Code Online (Sandbox Code Playgroud)

代码在我的测试环境中工作正常,但是当我使用生产SMTP服务器时,代码失败并显示SmtpException"发送邮件失败".内部IOException"无法从传输连接读取数据:net_io_connectionclosed".

我已经确认防火墙不是问题.端口在客户端和服务器之间打开很好.我不确定还有什么可能引发这个错误.

c# smtp

96
推荐指数
8
解决办法
18万
查看次数

在电子邮件中发送内联图片

通过电子邮件将图像作为嵌入图像发送到正文中时出现问题.图像文件显示为附件,但是内嵌图像部分显示为红色x.

这是我到目前为止所拥有的

LinkedResource inline = new LinkedResource(filePath);
inline.ContentId = Guid.NewGuid().ToString();
MailMessage mail = new MailMessage();
Attachment att = new Attachment(filePath);
att.ContentDisposition.Inline = true;
mail.From = from_email;
mail.To.Add(data.email);
mail.Subject = "Client: " + data.client_id + " Has Sent You A Screenshot";
mail.Body = String.Format(
    "<h3>Client: " + data.client_id + " Has Sent You A Screenshot</h3>" +
    @"<img src=""cid:{0}"" />", inline.ContentId);

mail.IsBodyHtml = true;
mail.Attachments.Add(att);
Run Code Online (Sandbox Code Playgroud)

c# email smtp inline image

95
推荐指数
7
解决办法
17万
查看次数

当Gmail启用双因素身份验证时,发送电子邮件失败

我正在使用我的Gmail帐户并smtp.gmail.com在我的网络应用程序中测试和发送电子邮件.当我的Gmail帐户启用双因素身份验证时,它无法发送电子邮件,但是当我关闭我的Gmail帐户的双因素身份验证时,该网络应用程序会成功发送电子邮件.感谢任何建议.

gmail smtp smtpclient two-factor-authentication

81
推荐指数
2
解决办法
3万
查看次数

测试邮件发送

测试电子邮件发送的任何提示?除了创建一个Gmail帐户,特别是接收这些电子邮件?

我想将本地电子邮件存储在发送的文件夹中.

python email django smtp django-testing

77
推荐指数
5
解决办法
4万
查看次数

如何在ASP.NET C#中发送电子邮件

我是ASP.NET C#领域的新手.我打算通过ASP.NET C#发送邮件,这是我的ISPSMTP地址:

smtp-proxy.tm.net.my
Run Code Online (Sandbox Code Playgroud)

以下是我尝试做的,但失败了.

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="SendMail" %>
<html>
<head id="Head1" runat="server"><title>Email Test Page</title></head>
<body>
    <form id="form1" runat="server">
        Message to: <asp:TextBox ID="txtTo" runat="server" /><br>
        Message from: <asp:TextBox ID="txtFrom" runat="server" /><br>
        Subject: <asp:TextBox ID="txtSubject" runat="server" /><br>
        Message Body:<br>
        <asp:TextBox ID="txtBody" runat="server" Height="171px" TextMode="MultiLine"  Width="270px" /><br>
        <asp:Button ID="Btn_SendMail" runat="server" onclick="Btn_SendMail_Click" Text="Send Email" /><br>
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

以下是我的代码隐藏:

using System;
using System.Web.UI.WebControls;
using System.Net.Mail;
public partial class SendMail …
Run Code Online (Sandbox Code Playgroud)

c# asp.net email smtp

77
推荐指数
4
解决办法
39万
查看次数

SMTP服务器需要安全连接或客户端未经过身份验证.服务器响应是:5.5.1身份验证是否必需?

我想从我的应用程序发送一封电子邮件,我写了以下代码来发送邮件

    MailMessage msg = new MailMessage();

    msg.From = new MailAddress("mymailid");
    msg.To.Add("receipientid");
    msg.Subject = "test";
    msg.Body = "Test Content";
    msg.Priority = MailPriority.High;

    SmtpClient client = new SmtpClient();

    client.Credentials = new NetworkCredential("mymailid", "mypassword", "smtp.gmail.com");
    client.Host = "smtp.gmail.com";
    client.Port = 587;
    client.DeliveryMethod = SmtpDeliveryMethod.Network;
    client.EnableSsl = true;
    client.UseDefaultCredentials = true;

    client.Send(msg);
Run Code Online (Sandbox Code Playgroud)

我在localhost上运行它,所以我正在做什么错误发送它.

当我发送按钮时,它给出了一个错误

SMTP服务器需要安全连接或客户端未经过身份验证.服务器响应为:5.5.1需要身份验证.

Web.config文件中的代码

 <appSettings>
    <add key="webpages:Version" value="2.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="PreserveLoginUrl" value="true" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />   
    <add key="smtpServer" value="smtp.gmail.com" />
    <add key="EnableSsl" value …
Run Code Online (Sandbox Code Playgroud)

c# smtp

76
推荐指数
12
解决办法
25万
查看次数

通过PHP邮件程序使用Gmail SMTP服务器发送电子邮件

我想通过PHP邮件程序使用Gmail SMTP服务器发送电子邮件.

这是我的代码

<?php
require_once('class.phpmailer.php');

$mail = new PHPMailer();
$mail->IsSMTP();
$mail->CharSet="UTF-8";
$mail->SMTPSecure = 'tls';
$mail->Host = 'smtp.gmail.com';
$mail->Port = 587;
$mail->Username = 'MyUsername@gmail.com';
$mail->Password = 'valid password';
$mail->SMTPAuth = true;

$mail->From = 'MyUsername@gmail.com';
$mail->FromName = 'Mohammad Masoudian';
$mail->AddAddress('anotherValidGmail@gmail.com');
$mail->AddReplyTo('phoenixd110@gmail.com', 'Information');

$mail->IsHTML(true);
$mail->Subject    = "PHPMailer Test Subject via Sendmail, basic";
$mail->AltBody    = "To view the message, please use an HTML compatible email viewer!";
$mail->Body    = "Hello";

if(!$mail->Send())
{
  echo "Mailer Error: " . $mail->ErrorInfo;
}
else
{ …
Run Code Online (Sandbox Code Playgroud)

php gmail smtp phpmailer

75
推荐指数
4
解决办法
35万
查看次数