我的编程空间,编程开发者的网络收藏夹
学习永远不晚

smtp协议中有哪些字符替换

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

smtp协议中有哪些字符替换

本篇内容主要讲解“smtp协议中有哪些字符替换”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“smtp协议中有哪些字符替换”吧!

互联网电子邮件不是一个完美的系统。邮件可能会在邮递到最终目的地的几个阶段中被损坏。具体来说,通过互联网发送的电子邮件可能会跨越许多网络技术。许多网络和邮件技术不支持SMTP传输中可能的全部功能环境。穿越这些系统的邮件很可能会被修改以便它可以运输。

互联网上存在许多广泛部署的不符合要求的MTA。这些MTA使用SMTP协议,可以随时利用它们所在主机的内部数据结构实施更改消息,或者只是简单的中断破坏。

以下指南可能对更改数据格式(媒体类型)的所有人都有用,该数据格式应该能够承受最广泛网络技术和已知的损坏的MTA。注意以任何base64方式编码的内容都将满足这些规则,但是一些众所周知的机制,特别是UNIX uuencode工具,将不会。还要注意任何以Quoted-Printable方式编码的内容要在大多数网关上保证无损,但可能有一些网关不会连接到使用EBCDIC字符集的系统。

(1)在某些情况下,用于数据的编码可能作为普通网关或用户代理操作的一部分进行更改。特别是从base64转换到Qp编码,反之亦然可能是必要的。这个可能会导致CRLF序列与行混淆并在文本主体中断开。因此,CRLF永远不能被定义为的其他功能除了作为一行的结束符之外。

(2)许多系统可以选择描述和存储文本数据使用本地的新建约定。本地新建约定可能不符合RFC822的 CRLF约定 - 已知的系统使用普通CR、普通LF、CRLF或计数记录。结果单独的CR和LF字符通用性不好; 他们可能会在某些系统上丢失或转换为分隔符,并且因此不能使用。

(3)NULs的传输(US-ASCII值0)是Internet邮件中存在问题。(这在很大程度上是NUL被作为许多C语言的常用的标准运行时库的终止字符)。使用NUL作为终止字符的习惯如今已经根深蒂固,邮件消息不应该依赖于它们被保存。

(4)TAB(HT)字符可能会被误解或可能被错误的自动转换为可变数量的空格。这在某些环境中是不可避免的,特别是那些不基于US-ASCII字符集。这样转换是非常不赞成的,但它可能会发生,因此邮件格式不能长久依赖于TAB(HT)           字符。

(5)长度超过76个字符的行可能被包裹或在某些环境中截断。换行或着邮件传输过程强行截断行是非常不赞成的,但在某些情况下不可避免。需要长行的应用程序必须以某种方式区分行数据的软和硬断点。(一个简单的方法是使用quoted-printable编码。)

(6)在一行数据上使用“空白空格”字符(空格,TAB(HT))可能会被传输代理丢弃,而其他传输代理可能会用这些字符来填充这些行数据,以便邮件文件中的所有行都是等长。因此,后面的空白空格的持久性,必须不能依赖。

(7)许多邮件域使用US-ASCII字符集的变种,或使用如其中包含大部分但不是全部US-ASCII字符的EBCDIC字符集。字符转换网关不能依赖于不在“不变”集中的字符正确翻译。例如,这个发送未解码信息到BITNET(世界教育网路”比特网”)时就存在问题,它是一个EBCDIC系统。类似问题无需穿越网关依然可能会发生,因为许多互联网主机使用US-ASCII以外的字符集。可打印字符串的定义在X.400中增加了一些特殊的限制案例。仅有字符在已知的所有网关中都是一致的,与大写和小写相对应的字符字母A-Z和az-,10位数字0-9,和以下十一个特殊字符:

        “'”    (US-ASCII十进制值39)

        “(” (US-ASCII十进制值40)

        “)” (US-ASCII十进制值41)

        “+”  (US-ASCII十进制值43)

        “,” (US-ASCII十进制值44)

        “ - ” (US-ASCII十进制值45)

        “”    (US-ASCII十进制值46)

        “/”   (US-ASCII十进制值47)

        “:” (US-ASCII十进制值58)

        “=”  (US-ASCII十进制值61)

        “?”  (US-ASCII十进制值63)

      一封最简易的邮件将限制本身在相对较短的文本行中,而这些文本和行的组成都             来自上面所述的73个字符集中。base64编码遵循此规则。

(8)一些邮件传输代理会破坏包含某些字母的字符串的数据 。特别是,一行数据中目前已知会被一些SMTP服务器给损坏,和从五个字符“From ”(第五个字符是一个空格)开始的一行数据也常常被破坏。一个严谨的代理组织可以防止因对数据编码而造成的数据损坏(例如,在QP编码中使用“= 46rom”代替由“From ”开头的一行数据中“From ”,“= 2E”代替一行上的单独句号(“.”))。请注意,上面的列表不是MTAs推荐的列表的做法。RFC 821 中MTA禁止改变空白空格或着截断一个比较长的行数据。这些不好的习惯和做法在已经建立的网络上存在了,但是在处理它们可能导致的不良影响时,实现应该是健壮的。

到此,相信大家对“smtp协议中有哪些字符替换”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

smtp协议中有哪些字符替换

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

smtp协议中有哪些字符替换

本篇内容主要讲解“smtp协议中有哪些字符替换”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“smtp协议中有哪些字符替换”吧!互联网电子邮件不是一个完美的系统。邮件可能会在邮递到最终目的地的几个
2023-06-04

java字符串替换方法有哪些

Java中字符串替换的方法有以下几种:1. replace(char oldChar, char newChar):将字符串中的指定字符oldChar替换为newChar。2. replace(CharSequence target, Ch
2023-09-05

Pandas中批量替换字符的方法有哪些

本篇内容介绍了“Pandas中批量替换字符的方法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、前言前几天在Python最强王者群有
2023-06-29

java字符串替换的方法有哪些

Java字符串替换的方法有以下几种:1. 使用replace()方法:该方法用于将指定的字符或字符串替换为新的字符或字符串。它接受两个参数:被替换的字符或字符串和替换后的字符或字符串,并返回一个新的字符串。例如:String newStr
2023-08-16

Java中常用的替换字符的方法有哪些

Java中常用的替换字符的方法有以下几种:使用String类中的replace()方法:该方法接受两个参数,第一个参数是要被替换的字符或字符序列,第二个参数是替换后的字符或字符序列。示例代码:String str = "Hello Wor
Java中常用的替换字符的方法有哪些
2023-10-28

Python中的字符串查找和替换技巧有哪些?

Python中的字符串查找和替换技巧有哪些?(具体代码示例)在Python中,字符串是一种常见的数据类型,我们在日常编程中经常会遇到字符串的查找和替换操作。本文将介绍一些常用的字符串查找和替换技巧,并配以具体的代码示例。查找子串在字符串中查
2023-10-22

C语言字符串替换的方法有哪些

C语言中字符串替换的方法有以下几种:1. 使用strchr()和strncpy()函数:使用strchr()函数查找需要替换的字符在字符串中的位置,然后使用strncpy()函数将替换的字符串复制到目标位置。```char *str_rep
2023-08-16

mysql中有哪些通信协议

这期内容当中小编将会给大家带来有关mysql中有哪些通信协议,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、说明MySQL客户端/服务器通信协议是半双工的:无论何时,无论是服务器向客户端发送数据,还是客
2023-06-15

mysql字符替换要注意哪些事项

在进行 MySQL 字符替换时,需要注意以下事项:数据类型:确保进行字符替换的字段的数据类型是字符型,否则可能会导致错误。替换范围:确定要替换的字符的范围,包括在哪些字段或表中进行替换。替换内容:确认替换的内容是否正确,避免替换错误的字符。
mysql字符替换要注意哪些事项
2024-05-06

oracle替换字符串要注意哪些事项

在使用Oracle替换字符串时,需要注意以下几点事项:要确保替换的字符串和被替换的字符串的类型一致,否则可能会导致类型不匹配的错误。要考虑到替换后的字符串可能会影响数据库的索引和查询性能,尽量避免频繁的字符串替换操作。使用合适的替换函数,如
oracle替换字符串要注意哪些事项
2024-03-05

VB.NET中有哪些字符转换函数

这篇文章给大家介绍VB.NET中有哪些字符转换函数,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。VB.NET字符转换代码操作实例:Public Function ToSBC()Function ToSBC(ByVal
2023-06-17

javascript中字符串替换函数是哪个

这篇文章将为大家详细讲解有关javascript中字符串替换函数是哪个,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。JavaScript的特点1.JavaScript主要用来向HTML页面添加交互行为。2
2023-06-14

php字符串中替换函数是哪个

本文将为大家详细介绍“php字符串中替换函数是哪个”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“php字符串中替换函数是哪个”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体内容如下,一起去收获新知
2023-06-06

sql中的替换函数有哪些

sql 提供了多种替换函数,用于替换字符串中的指定字符或字符序列:replace() 替换所有指定子字符串为新字符串。translate() 替换字符为指定字符序列中的对应字符。concat() 连接多个字符串为一个新字符串。substr(
sql中的替换函数有哪些
2024-05-15

PHP如何使用一个字符串替换字符串中的另一些字符

PHP提供了多种字符串替换函数,包括:str_replace:查找并替换子字符串preg_replace:使用正则表达式替换字符串substr_replace:替换特定位置的子字符串strtr:将字符转换为其他字符str_ireplace:执行不区分大小写的字符串替换了解这些函数对于修改字符串和提取或替换特定字符非常重要。它们可以应用于各种情况,例如文本处理、数据验证和字符串格式化。
PHP如何使用一个字符串替换字符串中的另一些字符
2024-04-02

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录