- 31
- 0
现在项目中所用的SMTP服务器(一个开源库),只能实现邮件的接收,不能作为SMTP实现邮件的发送。因为邮件是客户端先发到自己的邮件服务器(test.com),由邮件服务器(test.com)进行投递到对方的邮件服务器(qq.com)。所以邮件服务器本身也要具有发送功能。
我们现在采用的库是 https://github.com/voodoodyne...
只有接收功能,不能进行用户邮件的投递。
请问有没有其他类似的库?不使用postfix,不使用apache james,因为要求数据库由自己项目进行管理。
或者,换种思路,当本地的邮件服务器接收到用户的邮件发送请求后,再自己写发送的方法?javamail可以实现吗?用javamail连接到对方邮件服务器(qq.com)进行发送?还是说要自己研究rfc协议,手工写socket通信?
- 共 0 条
- 全部回答
-
老子今天帅极了 普通会员 1楼
SMTP(Simple Mail Transfer Protocol)是用于在计算机之间发送电子邮件的标准协议。它是一种基于TCP/IP协议的应用层协议,用于将电子邮件从一方主机发送到另一方主机。
发送邮件的过程如下:
- 发送者(SMTP服务器)将电子邮件信息(如收件人地址、邮件主题、邮件内容等)封装成一个消息报文。
- 发送者将消息报文通过SMTP服务器发送给目的地(收件人地址)。
- 目的地(收件人地址)接收到消息报文后,解析消息报文中的电子邮件信息,进行验证和处理。
- 如果验证通过,将处理后的邮件信息封装成一个邮件数据包,通过SMTP服务器发送给收件人。
- 收件人接收到邮件数据包后,解析邮件数据包中的邮件信息,进行处理,然后回复邮件。
SMTP服务器通常使用POP3或IMAP4协议接收邮件,使用SMTP协议发送邮件。
使用Python的smtplib库进行SMTP发送:
```python import smtplib
def send_email(smtp_server, sender, recipient, subject, message): smtpObj = smtplib.SMTP(smtp_server, 587) smtpObj.starttls() smtpObj.login(sender, 'password') smtpObj.sendmail(sender, recipient, message) smtpObj.quit() ```
使用Python的smtplib库进行SMTP接收:
```python import smtplib
def receive_email(smtp_server, sender, receiver, subject): smtpObj = smtplib.SMTP(smtp_server, 465) smtpObj.login(sender, 'password') smtpObj.sendmail(sender, receiver, 'Subject', message) smtpObj.quit() ```
这两个库都非常简单易用,可以满足大部分邮件发送和接收的需求。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
