新足迹

 找回密码
 注册

精华好帖回顾

· 响应"SK帮主 PK 朱PAPA"挑战赛之--特色菌菇两面黄 (2008-6-24) 孔武 · 来墨尔本半年了,越呆越后悔 (2005-7-31) song
· 误人子弟两三年(之四) (2008-3-17) astina · 冬日热汤—萝卜牛腩煲 (2007-7-16) bluesummer
Advertisement
Advertisement
查看: 3183|回复: 25

【C#】如何迅速判断一个email地址是否有效(真实存在)? [复制链接]

2007 年度奖章获得者

发表于 2012-1-25 01:25 |显示全部楼层
此文章由 coolioo 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 coolioo 所有!转贴必须注明作者、出处和本声明,并保持内容完整
已知一个email地址,格式是有效的。问题是怎么迅速判断这个email是否真实存在的呢??
Advertisement
Advertisement

发表于 2012-1-25 04:45 |显示全部楼层
此文章由 kawara 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 kawara 所有!转贴必须注明作者、出处和本声明,并保持内容完整
给他发个email。

如果不可以这么做的话只好尽量从格式上要求。

格式不是简单一个正则表达式可以判断的,比如说

可以有 co.uk,不会有 com.uk,可以有nsw.au等等。java里面有open source 库可以做这些事

[ 本帖最后由 kawara 于 2012-1-25 06:13 编辑 ]

发表于 2012-1-25 04:47 |显示全部楼层
此文章由 bulaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bulaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
talk smtp to the server. If they're nice, they'll tell you if the address doesn't exist. If they don't say anything, then you don't really know.

发表于 2012-1-25 09:51 |显示全部楼层
此文章由 findcaiyzh 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 findcaiyzh 所有!转贴必须注明作者、出处和本声明,并保持内容完整
头像被屏蔽

禁止访问

发表于 2012-1-25 09:55 |显示全部楼层

sending spam

此文章由 atransformer 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 atransformer 所有!转贴必须注明作者、出处和本声明,并保持内容完整

2012年度奖章获得者 2011年度奖章获得者

发表于 2012-1-25 09:58 |显示全部楼层

回复 coolioo 1# 帖子

此文章由 交易人生 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 交易人生 所有!转贴必须注明作者、出处和本声明,并保持内容完整
除了发送email,没有太好的办法,只要发不发完就可以,但是时间太久,对方会把你们的server列入blacklist。

所以,放弃这种选择吧。
Advertisement
Advertisement

发表于 2012-1-25 10:29 |显示全部楼层
此文章由 大飞熊 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 大飞熊 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 findcaiyzh 于 2012-1-25 10:51 发表
参考:

http://www.codeproject.com/Artic ... -Address-Validation

这里还有一个现成的库,原理看起来一样
http://www.emailarchitect.net/easendmail/ex/c/11.aspx


这个只能证明email address是有效的,但是不太可能证实email address是真实存在的。
走别人的路,让别人走投无路

发表于 2012-1-25 10:37 |显示全部楼层
此文章由 happysee 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 happysee 所有!转贴必须注明作者、出处和本声明,并保持内容完整
给那个email发送个邮件,让对方收到后点击一个链接到你的web application。

发表于 2012-1-25 11:10 |显示全部楼层
此文章由 bulaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bulaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
ha

发表于 2012-1-25 11:13 |显示全部楼层
此文章由 bulaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bulaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
spammers曾经有个不错的办法,就是在email里放一个1x1 pixel 的白色img的链接,image的URL指向一个spammer拥有的host,名字则是唯一的,这样当对方读email的时候就会发送这个http get,你就知道对方的email地址是真实的了。但现在email client一般都会默认不load up image,而是问用户要不要load。这样这个办法就基本上没用了。

评分

参与人数 1积分 +4 收起 理由
atransformer + 4 感谢分享

查看全部评分

发表于 2012-1-25 11:15 |显示全部楼层
此文章由 梦呓人 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 梦呓人 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 bulaohu 于 2012-1-25 12:13 发表
spammers曾经有个不错的办法,就是在email里放一个1x1 pixel 的白色img的链接,image的URL指向一个spammer拥有的host,名字则是唯一的,这样当对方读email的时候就会发送这个http get,你就知道对方的email地址是真实的了。但现在email client一般都会默认不load up image,而是问用户要不要load。这样这个办法就基本上没用了。



虎哥,那要是对方休假去了,2个礼拜后再开信箱呢
Advertisement
Advertisement

发表于 2012-1-25 11:18 |显示全部楼层
此文章由 梦呓人 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 梦呓人 所有!转贴必须注明作者、出处和本声明,并保持内容完整
楼主,客户给你们的具体要求是什么啊?

你要认证email是否存在,除了给对方发一个之外,几乎无法实现啊。

评分

参与人数 1积分 +3 收起 理由
Lucifer + 3 你太有才了

查看全部评分

发表于 2012-1-25 11:21 |显示全部楼层
此文章由 花蕾般的钟声 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 花蕾般的钟声 所有!转贴必须注明作者、出处和本声明,并保持内容完整
我有10个email地址都是真实有效的,常用的只有3个,其他的都在特殊的时间用

发表于 2012-1-25 11:33 |显示全部楼层
此文章由 无视 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 无视 所有!转贴必须注明作者、出处和本声明,并保持内容完整
To check if the mail has been read.

http://www.msgtag.com/home/

http://www.didtheyreadit.com/

[ 本帖最后由 无视 于 2012-1-25 12:38 编辑 ]

发表于 2012-1-25 11:39 |显示全部楼层
此文章由 梦呓人 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 梦呓人 所有!转贴必须注明作者、出处和本声明,并保持内容完整
有文章建议通过测试SMTP协议的三方握手来测试,我觉得或许可行


http://www.codeproject.com/Artic ... -Address-Validation

发表于 2012-1-25 11:43 |显示全部楼层
此文章由 fnever 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 fnever 所有!转贴必须注明作者、出处和本声明,并保持内容完整
多了会被认为是spam的,这是肯定的
Advertisement
Advertisement

2007 年度奖章获得者

发表于 2012-1-25 12:01 |显示全部楼层
此文章由 coolioo 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 coolioo 所有!转贴必须注明作者、出处和本声明,并保持内容完整
看来没有什么特别好的办法哈

发表于 2012-1-25 12:27 |显示全部楼层
此文章由 bulaohu 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 bulaohu 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 梦呓人 于 2012-1-25 12:15 发表



虎哥,那要是对方休假去了,2个礼拜后再开信箱呢


你又不用在屏幕前盯着

发表于 2012-1-25 13:53 |显示全部楼层
此文章由 findcaiyzh 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 findcaiyzh 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 大飞熊 于 2012-1-25 11:29 发表


这个只能证明email address是有效的,但是不太可能证实email address是真实存在的。


文章中提到和smtp握手了,没看完吧:)

发表于 2012-1-25 13:55 |显示全部楼层
此文章由 findcaiyzh 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 findcaiyzh 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 梦呓人 于 2012-1-25 12:39 发表
有文章建议通过测试SMTP协议的三方握手来测试,我觉得或许可行


http://www.codeproject.com/Artic ... -Address-Validation


我4楼已经帖过了

发表于 2012-1-25 14:30 |显示全部楼层
此文章由 jerryclark 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 jerryclark 所有!转贴必须注明作者、出处和本声明,并保持内容完整
问题的关键是这个email地址是谁提供的?
如果是owner提供的,你发一封邮件过去,弄个验证码点击一下,不就行了

如果是未经owner授权的,那就是spam,劝LZ还是放弃吧。都什么年代了。又不是90年代初
Advertisement
Advertisement

发表于 2012-1-25 23:46 |显示全部楼层
此文章由 fatfish_cc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 fatfish_cc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
我写的东东,可以试试看:
http://ipaddress-whois.com/email_verify

无法保证100%准确,因为:
- 有的smtp服务器,不会去校验email address是否真的存在,你输入任意地址,它都返回成功;
- 有的smtp服务器,会去校验email address是否真的存在。

[ 本帖最后由 fatfish_cc 于 2012-1-26 00:48 编辑 ]

特殊贡献奖章

发表于 2012-1-28 12:48 |显示全部楼层
此文章由 kr2000 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 kr2000 所有!转贴必须注明作者、出处和本声明,并保持内容完整
好奇知道这个的目的是神马
从来没见过有这个要求的,管他存不存在,发过去再说
发email成本太低了

发表于 2012-1-28 17:36 |显示全部楼层
此文章由 jerryclark 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 jerryclark 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 kr2000 于 28/1/2012 12:48 PM 发表
好奇知道这个的目的是神马
从来没见过有这个要求的,管他存不存在,发过去再说
发email成本太低了

Targetted Spam

特殊贡献奖章

发表于 2012-1-28 19:56 |显示全部楼层
此文章由 kr2000 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 kr2000 所有!转贴必须注明作者、出处和本声明,并保持内容完整
判断存不存在不是已经相当于spam过一次了吗

原帖由 jerryclark 于 2012-1-28 18:36 发表

Targetted Spam

发表于 2012-1-28 23:13 |显示全部楼层
此文章由 fatfish_cc 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 fatfish_cc 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 kr2000 于 2012-1-28 20:56 发表
判断存不存在不是已经相当于spam过一次了吗



不会spam:
------------------------------
Connecting mail.messaging.microsoft.com:25

220 VA3EHSMHS002.bigfish.com Microsoft ESMTP MAIL Service ready at Sat, 28 Jan 2012 13:11:38 +0000

EHLO rootever.com

250-VA3EHSMHS002.bigfish.com Hello [50.21.180.153]
250-SIZE 157286400
250-PIPELINING
250-ENHANCEDSTATUSCODES
250-STARTTLS
250-AUTH
250-8BITMIME
250-BINARYMIME
250 CHUNKING

MAIL FROM: <user@rootever.com>

250 2.1.0 Sender OK

RCPT TO: <Sdfwefewafe@microsoft.com>

550 5.4.1 Sdfwefewafe@microsoft.com: Recipient address rejected: Access Denied

RSET

250 2.0.0 Resetting


quit

221 2.0.0 Service closing transmission channel

--------------------------

Connecting rcdn-mx-01.cisco.com:25

220-rcdn-inbound-c.cisco.com ESMTP
220 Connections from the host u15704135.onlinehome-server.com (50.21.180.153), originating from SenderBase Network Owner ID: 3129346, are being throttled due to a low or non-existent SenderBase Reputation Score. See http://www.senderbase.org for more information.

EHLO rootever.com

250-rcdn-inbound-c.cisco.com
250-8BITMIME
250-SIZE 33554432
250 STARTTLS

MAIL FROM: <user@rootever.com>

250 sender <user@rootever.com> ok

RCPT TO: <sfwefrwefsd@cisco.com>

250 recipient <sfwefrwefsd@cisco.com> ok

RSET

250 reset


quit

221 rcdn-inbound-c.cisco.com
----------------------

评分

参与人数 1积分 +3 收起 理由
o2h2o + 3 有道理

查看全部评分

Advertisement
Advertisement

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Advertisement
Advertisement
返回顶部