栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如果邮件中包含某些字符,smtplib将发送空白邮件

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如果邮件中包含某些字符,smtplib将发送空白邮件

问题是,

smtplib
没有在邮件标题和邮件正文之间放置空白行,如我的测试的“显示原始”形式所示:

Return-Path: <me@gmail.com>Received: **REDACTED**        Fri, 03 Aug 2012 06:56:20 -0700 (PDT)Message-ID: <501bd884.850c320b@mx.google.com>Date: Fri, 03 Aug 2012 06:56:20 -0700 (PDT)From: me@gmail.comhttp: //www.example.com

尽管这是合法的邮件头,但邮件传输代理和邮件用户代理应忽略它们不理解的明显的头字段。并且因为RFC822标头一直持续到第一行空白行,并且

http:
看起来像标头行,所以将其解析为标头。如果给定换行符:

mensaje = 'nhttp://www.example.com'

然后它按预期工作。尽管从技术上来说,电子邮件只需要

smtplib
邮件内容所提供的“信封”,但是如果您希望收件人(及其邮件发件人)能够很好地对待邮件,则应该使用电子邮件模块生成正文。

添加

基于其中的doctest,

smtplib.py
这似乎是一项有意功能,允许的调用方
sendmail()
追加到标头:

     >>> msg = '''\     ... From: Me@my.org     ... Subject: testin'...     ...     ... This is a test '''     >>> s.sendmail("me@my.org", tolist, msg)

上面的

From:
Subject:
行是我上面提到的“ nice”标题的一部分。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/610824.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号