2010-06-15 37 views
7

Về this post về xác minh email,Thẩm định một địa chỉ email tồn tại trong C#

sử dụng C#, sẽ như thế nào bạn

  1. vấn đề một lệnh VRFY
  2. vấn đề một lệnh RCPT
+0

Nếu bạn nhìn vào câu trả lời của Sean Edwards, tôi nghĩ rằng điều đó sẽ đủ điều kiện như thế nào, mặc dù tôi đồng ý với những người khác ở đây rằng đây không phải là điều tốt nhất để làm vì 90% máy chủ email có thể sẽ nói dối bạn . –

Trả lời

36

tôi nghĩ rằng bạn sẽ thấy rằng trong nhiều trường hợp, các chức năng này sẽ cố tình nói dối bạn để đánh bại kẻ gửi thư rác. Nếu có một cách để xác nhận một email là thực sự khác hơn là có một người sử dụng bấm vào một xác nhận (hoặc bỏ đăng ký ....) liên kết sau đó gửi thư rác sẽ là người rất hạnh phúc.

Để làm rõ, cách tốt nhất để xác minh địa chỉ email là gửi cho người dùng một email chứa liên kết và đợi họ nhấp vào liên kết để xác minh họ đã nhận được email. Bất kỳ kỹ thuật nào khác (ngoại trừ môi trường mạng nội bộ/doanh nghiệp) đều không thành công và/hoặc nói dối để đánh bại những kẻ gửi spam.

+5

Tôi đánh giá cao lời khuyên, nhưng câu hỏi không phải là 'cách tốt nhất để xác minh email' là gì. –

+0

Vâng. Spence là câu trả lời AN. – Mau

+1

thường là khi phải đối mặt với các yêu cầu như vậy, nó là hữu ích hơn để làm phân tích nguyên nhân gốc về lý do tại sao điều này là cần thiết.nó sẽ chỉ ra rằng khách hàng đã thấy những người có địa chỉ email 'được bảo vệ' yêu cầu người gửi lần đầu tiên nhấp vào một liên kết trước khi thư thực sự được gửi. nó sẽ đơn giản hơn để ở lại với xác minh địa chỉ email thông thường (liên kết trong email) và đặt một số văn bản bổ sung yêu cầu người cung cấp email để "danh sách trắng" một id email cụ thể (nói: [email protected]) trước. –

5

Có một dự án tốt đẹp here với đoạn mã về cách đạt được điều này, nhưng như Spence đã đề cập, chúng có thể không hoạt động chính xác.

+0

Tôi cũng đã đề xuất điều này. Bạn nên kiểm tra nó ra Ken. – Hinek

2

Thông thường.

  • VRFY: Quên đi. Nghiêm túc;) Không có máy chủ sẽ trả lời - không có sane. Đã được sử dụng quá nhiều bởi kẻ gửi thư rác.

    • Đối với phần còn lại: kết nối với máy chủ bằng TCP, "chỉ cần thực hiện" (nghĩa là bắt tay SMTP chương trình, sau đó tiếp tục).
5

Nếu bạn không phải lo lắng về các máy chủ SMTP nào nói dối bạn (hãy xem phần 2.11 ở đây: http://tools.ietf.org/html/rfc2505), thì cách tốt nhất thực sự có thể để mở ra một TcpClient đến máy chủ và tự chạy giao thức SMTP. SMTP là một giao thức thực sự dễ dàng. Bạn có thể tìm hiểu mọi thứ bạn cần biết từ Wikipedia: http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol

Các vấn đề liên quan