程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#通過POP3協議驗證 Email 賬號

C#通過POP3協議驗證 Email 賬號

編輯:C#入門知識

 

 

static bool ValidateEmailAccount(string server, int port, string userName, string password, out string ErrorMessage) 

        { 

            ErrorMessage = ""; 

 

            //create a tcp connection 

            TcpClient _server = new TcpClient(server, port); 

             

            //prepare  

            NetworkStream netStream = _server.GetStream(); 

            StreamReader reader = new StreamReader(_server.GetStream()); 

 

            if (!reader.ReadLine().Contains("+OK")) 

            { 

                //失敗 

                ErrorMessage = "server鏈接失敗"; 

                return false; 

            } 

 

            string data; 

            byte[] charData; 

            string CRLF = "\r\n"; 

 

            //login 

            data = "USER " + userName + CRLF; 

            charData = System.Text.Encoding.ASCII.GetBytes(data); 

            netStream.Write(charData, 0, charData.Length); 

            if (!reader.ReadLine().Contains("+OK")) 

            { 

                //賬戶錯誤 

                ErrorMessage = "賬戶錯誤"; 

                return false; 

            } 

            data = "PASS " + password + CRLF; 

            charData = System.Text.Encoding.ASCII.GetBytes(data); 

            netStream.Write(charData, 0, charData.Length); 

            if (!reader.ReadLine().Contains("+OK")) 

            { 

                //密碼錯誤 

                ErrorMessage = "密碼錯誤"; 

                return false; 

            } 

            return true; 

        } 

 

 調用

 

 

string errorMessage; 

bool isContains = ValidateEmailAccount("pop3.163.com", 110, "[email protected]", "************", out errorMessage); 

 

Console.WriteLine(isContains ? "用戶存在" : errorMessage); 

 

  摘自 sandy的專欄

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved