国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

使用SMTP協議發送郵件

2019-11-18 14:53:35
字體:
來源:轉載
供稿:網友

  使用SMTP協議發送郵件,可以不通過SMTP服務器,直接將郵件發送到郵件服務器。很多服務器端程序可能需要向很多用戶發送郵件,直接通過SMTP發送可能是最有效的。

關于SMTP協議定義在RFC821,可以在此看中文版。

第一步:通過目標email查找郵件服務器。
例如:asklxf@sohu.com,其郵件服務器地址為:sohumx.sohu.com

import java.net.*;
import java.io.*;
import java.util.*;
import javax.naming.*;
import javax.naming.Directory.*;

public class Smtp {

    public static void main(String[] args) throws Exception {
        // DNS服務器,看看本機的DNS配置
        String dns = "dns://192.168.1.1";
        // 郵箱后綴:
        String domain = "sohu.com";
        Hashtable env = new Hashtable();
        env.put("java.naming.factory.initial", "com.sun.jndi.dns.DnsContextFactory");
        env.put("java.naming.        DirContext ctx = new InitialDirContext(env);
        Attributes attr = ctx.getAttributes(domain, new String[]{"MX" });
        NamingEnumeration servers = attr.getAll();
        // 列出所有郵件服務器:
        while(servers.hasMore()) {
            System.out.println(servers.next());
        }
    }
}

第二步:直接連接郵件服務器的25端口,用SMTP協議發送郵件。
這里使用sohu信箱,郵件服務器為sohumx.sohu.com,收信人必須在此服務器上:

import java.net.*;
import java.io.*;
import java.util.*;
import javax.naming.*;
import javax.naming.directory.*;

public class Smtp {

    private static String END_FLAG = "/r/n";

    public static void main(String[] args) throws Exception {
        String mx = "sohumx.sohu.com";
        InetAddress addr = InetAddress.getByName(mx);
        Socket socket = new Socket(addr, 25);

        InputStream in = socket.getInputStream();
        OutputStream out = socket.getOutputStream();



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 建德市| 应城市| 清流县| 开鲁县| 兴业县| 郓城县| 应城市| 台北市| 四子王旗| 葵青区| 九江市| 丹江口市| 铁力市| 竹山县| 凌云县| 瑞丽市| 高州市| 安溪县| 韶山市| 普陀区| 新源县| 大田县| 隆子县| 龙岩市| 社旗县| 呼图壁县| 南乐县| 宁陕县| 区。| 嘉义县| 平顺县| 连山| 华蓥市| 上林县| 罗田县| 图木舒克市| 同德县| 格尔木市| 新竹县| 吉木乃县| 巴楚县|