标签: mime

mime 格式的文件在出现换行符时会丢失点

我正在编写一个包含 html 的 mime 格式的电子邮件文件。我正在编写 mime 文件的 html 部分,如下所示:

writer.WriteLine("--" + altBoundary);
writer.WriteLine("Content-Type: text/html; charset=\"UTF-8\"");
writer.WriteLine("Content-Transfer-Encoding: quoted-printable");
writer.WriteLine();
QuotedPrintableEncoder qpEncoder=new QuotedPrintableEncoder();
writer.WriteLine(qpEncoder.Encode(HTMLBody));
Run Code Online (Sandbox Code Playgroud)

在 HTMLBody 中我有一大块 html。其中一个片段如下所示:

<p><br />Dear Ben,<br /><br />

              Thank you for your interest in our products and services.
   =
          =20
              </p>

              <p>Here are some literature links you may find interesting:<=
/p>

              <ul><li><a  title=3D"Brochure One"  href=3D"http://xxxxxshow=
.xxxpoint.com/Document?client=3DXxxxxxpoint&document=3DBrochure One">Broch=
ure One</a></li></ul>

              Regards,<br />
Run Code Online (Sandbox Code Playgroud)

请注意 //xxxxxshow.xxxpoint.com 域,它跨越 mime 文件中的换行符。当此域到达 Outlook 时,它“丢失了第一个点”,因此它读取的是 xxxxshowxxxpoint.com,而它应该读取的是 xxxxxshow.xxxpoint.com。如果发生换行,使得该点成为下一行的第一个字符,则该点会“丢失”,并且当电子邮件到达 Outlook 时,该点会从电子邮件源中丢失。如果换行符出现在“xxxxxshow”一词的中间,则该点不会丢失,并且它确实会出现在 Outlook 内的电子邮件中。

这是怎么回事?我该如何解决这个问题?

c# encoding mime file

1
推荐指数
1
解决办法
888
查看次数

如何在 php 中解析 .eml 文件?

如何在 php 中解析.eml文件?是否有任何 PHP 库或 PHP 扩展?

我想在浏览器中显示邮件标题信息,例如发件人、收件人、标题、附件和 eml 正文内容。

php parsing mime eml

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

使用HTML电子邮件添加纯文本后备

我已经看过这篇文章,但这似乎并不是我需要的方法。

我目前正在做的是将电子邮件创建为.html文件,然后将其附加到Outlook中并发送-我要做的是通过具有HTML / CSS样式但也具有纯文本版本的Outlook发送电子邮件后备。

我一直在搜索,而我所得到的只是有关MIME(多用途Internet邮件扩展)的信息,而关于我的信息是:/

是否可以简单地添加到确定使用HTML还是纯文本的html文件代码中?

html email mime plaintext

1
推荐指数
1
解决办法
4230
查看次数

如何在 Node js 中保存表示为字符串的 zip 文件

我收到了来自 ebay-api 的回复

\n\n
\n

--MIMEBoundaryurn_uuid_C91296EA5FF69EE9571479882375576​​565344 内容类型:application/xop+xml;字符集=utf-8;类型 =“text/xml”\n 内容传输编码:二进制内容 ID:\n <0.urn:uuid:C91296EA5FF69EE9571479882375576​​565345>

\n\n

Success1.1.02016-11-23T06:26:15.576Z514\n --MIMEBoundaryurn_uuid_C91296EA5FF69EE9571479882375574545344 内容类型:application/zip 内容传输编码:二进制\n 内容 ID:

\n\n

PKY\'uIi[\xef\xbf\xbd\xef\xbf\xbd@\xef\xbf\xbd50014028337_report.xmlUT y\xef\xbf\xbd2Xy\xef\xbf\xbd2Xux\n 00\xef\xbf\xbdR\xef \xbf\xbdj\xef\xbf\xbd@\xef\xbf\xbd\xef\xbf\xbd+\xef\xbf\xbd\xef\xbf\xbd[\xef\xbf\xbd\xef\xbf\xbdPlX#\ xef\xbf\xbd(\xef\xbf\xbdx,=l\xef\xbf\xbdq)Lfewc\xef\xbf\xbd\xef\xbf\xbdw\xc4\xa4\xef\xbf\xbd\xef\xbf\ xbdO\xef\xbf\xbd\xef\xbf\xbd\xd9\xa1\xef\xbf\xbdHT\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdt\xef\xbf\xbd\xef\ xbf\xbdGGT\xef\xbf\xbd\n\xef\xbf\xbd\xef\xbf\xbd6\xef\xbf\xbd;\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\' \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.$\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd=d\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdm;c}W\xdf\xa6\xef\xbf \xbdRW\xef\xbf\xbdA\nf\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdg\xef\xbf\xbdI\xef\xbf \xbd\xef\xbf\xbd4U\xef\xbf\xbd\xef\xbf\xbdx\xef\xbf\xbd\xef\xbf\xbd3\xef\xbf\xbd\xef\xbf\xbdf\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xd2\x93{f\xef\xbf\xbd\xef\xbf\xbdxj\xef\xbf\xbd,+\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xdb\x96I%5\xef\xbf\xbd\xef\xbf\xbdB\'s\xef\xbf\xbd\xef\xbf\xbdG,#\xef\xbf\xbd\xef\ xbf\xbdt,L{\xef\xbf\xbdc\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdMD\xe7\xac\x93\xef \xbf\xbd\xef\xbf\xbd)!\xef\xbf\xbd9\xef\xbf\xbd\xef\xbf\xbd\n \xef\xbf\xbdM\xef\xbf\xbdo;8_\xef\xbf \xbd\xef\xbf\xbd<\xef\xbf\xbdi\xef\xbf\xbdy\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdsz\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbdu\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd=\xef\xbf\xbd\xef\xbf\xbd\xd5\x8b^2 \xef\xbf\xbdS\xef\xbf\xbd\xef\xbf\xbd%+2\xef\xbf\xbd2\xef\xbf\xbd`QV\xef\xbf\xbd$\xef\xbf\xbd\xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd~?\xef\xbf\xbdw\xef\xbf\xbd\xc7\xa5\xef\xbf\xbd_Q\xef\xbf \xbd\xed\x89\xa6\xef\xbf\xbd\'PKY\'uIi[\xef\xbf\xbd\xef\xbf\xbd@\xef\xbf\xbd\xef\xbf\xbd\xef\xbf \xbd50014028337_report.xmlUTy\xef\xbf\xbd2Xux\n 00PK\\\xef\xbf\xbd\n --MIMEBoundaryurn_uuid_C91296EA5FF69EE9571479882375576​​565344--

\n
\n\n

这是字符串类型。我提取了附加的 zip 文件数据,即

\n\n
\n

PKY\'uIi[\xef\xbf\xbd\xef\xbf\xbd@\xef\xbf\xbd50014028337_report.xmlUT y\xef\xbf\xbd2Xy\xef\xbf\xbd2Xux\n 00\xef\xbf\xbdR\xef \xbf\xbdj\xef\xbf\xbd@\xef\xbf\xbd\xef\xbf\xbd+\xef\xbf\xbd\xef\xbf\xbd[\xef\xbf\xbd\xef\xbf\xbdPlX#\ xef\xbf\xbd(\xef\xbf\xbdx,=l\xef\xbf\xbdq)Lfewc\xef\xbf\xbd\xef\xbf\xbdw\xc4\xa4\xef\xbf\xbd\xef\xbf\ xbdO\xef\xbf\xbd\xef\xbf\xbd\xd9\xa1\xef\xbf\xbdHT\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdt\xef\xbf\xbd\xef\ xbf\xbdGGT\xef\xbf\xbd\n\xef\xbf\xbd\xef\xbf\xbd6\xef\xbf\xbd;\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\' \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.$\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd=d\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdm;c}W\xdf\xa6\xef\xbf \xbdRW\xef\xbf\xbdA\nf\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdg\xef\xbf\xbdI\xef\xbf \xbd\xef\xbf\xbd4U\xef\xbf\xbd\xef\xbf\xbdx\xef\xbf\xbd\xef\xbf\xbd3\xef\xbf\xbd\xef\xbf\xbdf\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xd2\x93{f\xef\xbf\xbd\xef\xbf\xbdxj\xef\xbf\xbd,+\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xdb\x96I%5\xef\xbf\xbd\xef\xbf\xbdB\'s\xef\xbf\xbd\xef\xbf\xbdG,#\xef\xbf\xbd\xef\ xbf\xbdt,L{\xef\xbf\xbdc\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdMD\xe7\xac\x93\xef \xbf\xbd\xef\xbf\xbd)!\xef\xbf\xbd9\xef\xbf\xbd\xef\xbf\xbd\n \xef\xbf\xbdM\xef\xbf\xbdo;8_\xef\xbf \xbd\xef\xbf\xbd<\xef\xbf\xbdi\xef\xbf\xbdy\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdsz\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbdu\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd=\xef\xbf\xbd\xef\xbf\xbd\xd5\x8b^2 \xef\xbf\xbdS\xef\xbf\xbd\xef\xbf\xbd%+2\xef\xbf\xbd2\xef\xbf\xbd`QV\xef\xbf\xbd$\xef\xbf\xbd\xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd~?\xef\xbf\xbdw\xef\xbf\xbd\xc7\xa5\xef\xbf\xbd_Q\xef\xbf \xbd\xed\x89\xa6\xef\xbf\xbd\'PKY\'uIi[\xef\xbf\xbd\xef\xbf\xbd@\xef\xbf\xbd\xef\xbf\xbd\xef\xbf \xbd50014028338_report.xmlUTy\xef\xbf\xbd2Xux\n 00PK\\\xef\xbf\xbd

\n
\n\n

这表明它里面有一个report.xml。因此,当我将这些数据写入 zip 文件时,它会创建一个 zip 文件,并且在提取时会出现错误。 …

javascript php mime node.js ebay-api

1
推荐指数
1
解决办法
5103
查看次数

在 Python 中发送带有颜色格式的电子邮件

我有下面的 Python 代码,用于从 file 的内容向我的 ID 发送电子邮件filename。我正在尝试发送带有文本颜色格式的电子邮件。

有什么想法请指教。

def ps_Mail():
    filename = "/tmp/ps_msg"
    f = file(filename)
    if os.path.exists(filename) and os.path.getsize(filename) > 0:
        mailp = Popen(["/usr/sbin/sendmail", "-t", "-oi"], stdin=PIPE)
        msg = MIMEMultipart('alternative')
        msg['To'] = "karn@abc.com"
        msg['Subject'] = "Uhh!! Unsafe rm process Seen"
        msg['From'] = "psCheck@abc.com"
        msg1 = MIMEText(f.read(),  'text')
        msg.attach(msg1)
        mailp.communicate(msg.as_string())
ps_Mail()
Run Code Online (Sandbox Code Playgroud)

html python mime

1
推荐指数
1
解决办法
1万
查看次数

html电子邮件python中的if语句

我正在使用 MIME Multipart 在 HTML 中撰写电子邮件并使用 smtplib 发送,并且希望仅在条件评估为 true 时才包含句子。基本上是这样的

html = """\
    <html>
      <body>
        Hi {name}<br>
        Hope you are doing well.
           **<% if {empanelled}: %>**
                <br> We are already empanelled with your company<br>

      </body>
    </html>
    """.format(name=firstname, empanelled = empanelled)
Run Code Online (Sandbox Code Playgroud)

如果我们是 empaneled (value = 1),那么后面的句子应该写成 else if value = 0, 不应该出现。任何有关如何使用 python 执行此操作的指示将不胜感激。

python mime

1
推荐指数
1
解决办法
1817
查看次数

如何使用 Indy Mime 对二进制数据进行编码?

我有一个 Ansi 字符串,用于存储二进制数据 - 0-255 范围内的字节(我知道它应该是一个字节数组左右,但它们之间没有太大区别)。
我想通过 Indy MIME (TIdEncoderMIME.EncodeString / TIdDecoderMIME.DecodeString) 传递这个“二进制字符串”并获得人类可读的ANSI字符串。

我认为如果我使用 IndyTextEncoding_8Bit 编码,Encode/DecodeString 的输出将是一个仅包含 ANSI 字符的字符串。但是我错了!

那么,如何使用 Indy Mime 编码二进制数据(类似于application/octet-stream)?

delphi encoding mime indy delphi-xe7

1
推荐指数
1
解决办法
1607
查看次数

从 Content-Disposition 标头获取 UTF-8 文件名

当我尝试从 Content-Disposition 标头获取文件名时,go 函数mime.ParseMediaType()失败并出现错误mime: invalid media parameter


我已经发现它适用于正常的文件名格式:

attachment; filename="Geotag_Stamp%20(1)%20(1).jpg"<- 作品

但是对于 UTF-8 文件名(在rfc6266中定义),它会失败并出现第一段中给出的错误:

attachment; filename*=UTF-8''"Geotag_Stamp%20(1)%20(1).jpg"<- 失败


这是我的代码:

package main

import (
    "fmt"
    "mime"
)

func main() {
    d, params, err := mime.ParseMediaType(`attachment; filename="Geotag_Stamp%20(1)%20(1).jpg"`)
    if err != nil {
        fmt.Println("**Normal Filename error:", err)
    }
    
    fmt.Println("Normal:", d, params)
    d, params, err = mime.ParseMediaType(`attachment; filename*=UTF-8''"Geotag_Stamp%20(1)%20(1).jpg"`)
    if err != nil {
        fmt.Println("**UTF-8 Filename error:", err)
    }
    fmt.Println("UTF-8",d, params)
}
Run Code Online (Sandbox Code Playgroud)

在操场上


stdlib 是否可能不支持 Content-Disposition->Filename 的 UTF-8 版本?

mime go

1
推荐指数
1
解决办法
4247
查看次数

回复 MIME Lite 错误,因为使用了严格的 [=&gt;(胖逗号)运算符]

我使用 MIME::Lite 从我的 Perl 脚本发送电子邮件。我使用了严格的;在我的标题中,因为这是我们所有脚本中的标准用法。

        my $msg = MIME::Lite->new(
            From => $from,
            To   => $to_str,
            Cc      => $cc_str,
            Reply-To    => $replyto,
            Subject => $tf_subject,
            Type    => 'multipart/mixed'
        );
Run Code Online (Sandbox Code Playgroud)

当我在此函数中添加 Reply-To 以获取退回电子邮件时,出现以下错误。

不允许使用裸词“回复”,而“严格的订阅者”正在使用

但是我在 MIME::Lite 的文档中看到 Reply-To 是获得退回电子邮件的唯一方法。

有没有办法在同一个脚本中同时容纳严格和回复?

email perl mime

1
推荐指数
1
解决办法
92
查看次数

当我在电子邮件收件箱中收到从 Python 发送到 gmail 帐户的“test.txt”文件时,是什么原因导致该文件显示为“无标题”?

我通过 python 程序发送一个名为test.txt附件的文件。它成功发送,但当我在 Gmail 收件箱中收到它时,附件显示Untitled的是text.txt. 我的电子邮件代码块如下,看起来是正确的。有什么建议么?

# Setup the email
mail_content = '''Hello,
The attached document contains the results of the file scan.
Please contact the IT Help Desk if you have any questions.
Thank You!!!
'''
message = MIMEMultipart()
message['From'] = sender_address
message['To'] = receiver_address
message['Subject'] = 'A test mail sent by Python. It has an attachment.'
message.attach(MIMEText(mail_content, 'plain'))
attach_file_name = 'david.txt'
# attach_file_name = file_name
attach_file = open(attach_file_name, 'rb')  # Open the …
Run Code Online (Sandbox Code Playgroud)

python mime email-attachments mimemultipart

1
推荐指数
1
解决办法
242
查看次数