java邮件第一篇-使用命令行发送简单邮件
2013-05-23 23:47
363 查看
一、基本概念
SMTP(simple mail transfer protocl简单邮件传输协议),定义了邮件客户端软件与smtp服务器之间,以及两来smtp服务器之间的通信规则。
POP的全称是 Post Office Protocol,即邮局协议,用于电子邮件的接收。是TCP/IP协议族中的一员,由RFC 1939 定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。
新浪的邮件服务:smtp.sian.com 端口:25
使用telnet命令连接服务器
二、命令行邮件发送实例(新浪邮箱和网易邮箱)
1、准备一个程序用来进行BASE64Encoder的转换
2、得到加密之后的用户名和密码后,就可以使用命令行发送邮件,
下面演示一个完整的发送邮件过程;按照红色命令即可实现简单邮件的发送;
2.1、打开DOS命令行,使用telnet命令:telnet smtp.sina.com 25
这个是新浪的邮件服务器 ;25是端口;
注:如果telnet提示不是内部或者外部命令,一定是你的telnet.exe没有安装,你可以在
控制面板中,打开关闭的telnet服务器和客户端即可;
2.2、新浪的服务器连接上后,必须向服务器打招呼,即发送 命令EHLO [ ] ;
在这里便是:ehlo yourhostname
注:junxiuxiao是我的新浪的账号;这里没有使用base64的加密;
2.3、打过招呼之后,便开始输入用户名和密码:
在服务器的第一个提示下(虽然看不懂),输入加密后的账号:anVueGl1eGlhbw
在服务器的第二个提示下(虽然看不懂),输入加密后的密码:XXXXXX
在身份验证成功后,会有提示:OK Authenticated 表示登录成功
2.4、然后,设置发件人和收件人地址;
直接输入 :mail from! <junxiuxiao@sina.com>
ok之后,在输入 :rcpt to: <junxiuxiao@163.com>
紧接着输入:data
下一步,输入发件人名称,输入 from! <junxiuxiao@sina.com>
输入标题: subject! nihao
换行后输入!!!!!
然后:test!!!!!
最后:.
2.5、到此为止,邮件已经发送成功,你可以登录邮箱查看!我的如下:
本人,测试了qq邮件的发送,如果你发送不成功,可能由于qq的邮件服务没有打开,如果没有开的话,也不成问题,qq会检测到你尝试使用smtp发送邮件,然后qq会给你发一个邮件提醒,告诉你如何打开smtp服务;
可是,qq邮箱的发件人有些,不满意:感兴趣的同志,自己测试,不是研究的重点!
本文出自 “SeaSky” 博客,请务必保留此出处http://seasky09.blog.51cto.com/7243998/1208492
SMTP(simple mail transfer protocl简单邮件传输协议),定义了邮件客户端软件与smtp服务器之间,以及两来smtp服务器之间的通信规则。
POP的全称是 Post Office Protocol,即邮局协议,用于电子邮件的接收。是TCP/IP协议族中的一员,由RFC 1939 定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。
新浪的邮件服务:smtp.sian.com 端口:25
使用telnet命令连接服务器
二、命令行邮件发送实例(新浪邮箱和网易邮箱)
1、准备一个程序用来进行BASE64Encoder的转换
package util; import java.io.UnsupportedEncodingException; import java.util.Scanner; import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder; public class mainBase64 { // 加密 public static String getBase64(String str) { byte[] b = null; String s = null; try { b = str.getBytes("utf-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } if (b != null) { s = new BASE64Encoder().encode(b); } return s; } public static void main(String[] args){ System.out.println("请输入编码前的字符串:"); Scanner scanner= new Scanner(System.in); String string=scanner.next(); String string0=getBase64(string); System.out.println("编码后:"+string0); } }由于使用命令行发送邮件时候,用户的用户名和密码必须是经过base64加密之后的字符串,所以在发送邮件之前,必须将自己注册的邮箱的用户名和密码加密;
2、得到加密之后的用户名和密码后,就可以使用命令行发送邮件,
下面演示一个完整的发送邮件过程;按照红色命令即可实现简单邮件的发送;
2.1、打开DOS命令行,使用telnet命令:telnet smtp.sina.com 25
这个是新浪的邮件服务器 ;25是端口;
注:如果telnet提示不是内部或者外部命令,一定是你的telnet.exe没有安装,你可以在
控制面板中,打开关闭的telnet服务器和客户端即可;
2.2、新浪的服务器连接上后,必须向服务器打招呼,即发送 命令EHLO [ ] ;
在这里便是:ehlo yourhostname
注:junxiuxiao是我的新浪的账号;这里没有使用base64的加密;
2.3、打过招呼之后,便开始输入用户名和密码:
在服务器的第一个提示下(虽然看不懂),输入加密后的账号:anVueGl1eGlhbw
在服务器的第二个提示下(虽然看不懂),输入加密后的密码:XXXXXX
在身份验证成功后,会有提示:OK Authenticated 表示登录成功
2.4、然后,设置发件人和收件人地址;
直接输入 :mail from! <junxiuxiao@sina.com>
ok之后,在输入 :rcpt to: <junxiuxiao@163.com>
紧接着输入:data
下一步,输入发件人名称,输入 from! <junxiuxiao@sina.com>
输入标题: subject! nihao
换行后输入!!!!!
然后:test!!!!!
最后:.
2.5、到此为止,邮件已经发送成功,你可以登录邮箱查看!我的如下:
本人,测试了qq邮件的发送,如果你发送不成功,可能由于qq的邮件服务没有打开,如果没有开的话,也不成问题,qq会检测到你尝试使用smtp发送邮件,然后qq会给你发一个邮件提醒,告诉你如何打开smtp服务;
可是,qq邮箱的发件人有些,不满意:感兴趣的同志,自己测试,不是研究的重点!
本文出自 “SeaSky” 博客,请务必保留此出处http://seasky09.blog.51cto.com/7243998/1208492
相关文章推荐
- 使用java在本地服务器实现简单的邮件的发送与接受
- JAVA邮件发送的简单实现,使用javamail通过smtp协议发信
- java邮件第四篇--使用java程序发送简单的文本邮件
- Java中使用SimpleEmail实现简单邮件的发送
- Java邮件开发(一):使用JMail发送一封简单邮件
- 使用java发送邮件简单的例子
- java邮件发送的简单实现,使用javamail通过smtp协议发信
- Java邮件开发(一):使用JMail发送一封简单邮件
- Java学习1-使用java mail包发送简单邮件
- 使用Java发送邮件
- 使用JavaMail进行简单SMTP邮件发送测试,从网易邮箱发送到QQ邮箱
- JAVA邮件发送的简单实现
- 使用java来发送邮件一
- 使用commons-email(1.3.3)发送邮件的简单示例
- Python(2.7.x)使用SMTP发送邮件的简单示例
- 基于JavaMail的Java邮件发送:简单邮件发送
- Java程序发送简单邮件
- 【Python】Python使用smtplib发送简单文本邮件
- JAVA邮件发送的简单实现
- java使用Freemarker模板发送固定格式邮件