有些网站需要用邮箱进行验证,我也想添加邮箱验证服务,查了一下 java 发送邮件的方式,使用 javax.mail 框架发送,可是我发现使用这个框架,需要在目标邮箱开启 SMTP 服务,填上授权码才能发送成功,这是怎么回事?
我在网上注册用的邮箱,也没点击按钮开通 SMTP 服务,就能进行邮箱认证。
填上表单内 的邮箱,提交后,网站那边是怎么发送邮件到我的邮箱里来的?它们没有得到我给的 SMTP 授权码。之前我也没开通 SMTP 服务,更何况国外网站发的邮箱的也能发送到国内的注册的邮箱内来。
难道也有“邮件服务发送白名单”么?需要注册所谓的企业邮箱?
1
xxxy 2020-09-08 14:41:13 +08:00
接邮件和发邮件是不一样的
|
2
lcy630409 2020-09-08 14:41:57 +08:00 1
大家快来 这里有个萌新 快来欺负他
|
3
samgentlem 2020-09-08 14:44:06 +08:00
你是发件方,所以你要做验证
对方是接收方,收件人地址填对就可以了 |
5
chihiro2014 2020-09-08 14:46:48 +08:00
你自己做好验证,就能随便发了,别人不需要
|
6
tctc4869 OP @samgentlem 第一次做这个不清楚,是要做什么验证?如果必须要授权码的话,那很多网站的邮件发送是怎么发送成功的?
|
7
lysS 2020-09-08 14:49:28 +08:00
https://dm.console.aliyun.com/
花钱办事最方便,而且每天免费 500 |
8
biu7 2020-09-08 14:53:41 +08:00
网站发送邮件给用户,是使用网站的邮箱,发送给用户的邮箱,需要的是网站邮箱的授权,而不是用户的授权。
|
9
doveyoung 2020-09-08 14:53:45 +08:00
发送方,首先你要有一个邮箱,如果你想自建邮件服务器可以另外找文档,假设你用的 qq 邮箱 [email protected]
一般需要的设置是 smtp 服务器地址 smtp.mail.qq.com (不知道对不对) 邮箱账户名 [email protected] 邮箱密码 123456 (如果你邮箱有两步验证之类的这里就要用授权码) 发送邮件时填写收件人帐号 |
10
easonHHH 2020-09-08 14:54:13 +08:00
Javax.Mail 只是一个方便你跟邮箱服务器通信的客户端(这个我看了一眼大概是这样的,能不能顺带部署邮件服务器没细看),前提是你需要一个邮件服务器,你可以是自己部署,或者是使用公开的邮箱服务器,比方说 GMail,你填的授权码就是邮件服务器提供的。
|
11
qiayue 2020-09-08 14:55:54 +08:00
自己搭建邮件服务器,或者使用免费的服务(量小时),或者购买付费的服务(量大时)
可以试试搜狐的 sendcloud |
13
tctc4869 OP 我明白了,我可能搞错了什么,我以为发邮件是直接从我的电脑上,发到收件人邮箱里。另外一个方式是使用已有的邮箱,根据这个邮箱的授权码从这个邮箱发送到用户的邮箱去
|
14
XiLingHost 2020-09-08 15:25:40 +08:00
@tctc4869 理论上也可以从你的电脑上直接发,但是一般这种没有签名的邮件会被直接丢弃
|
15
hbolive 2020-09-08 16:13:15 +08:00
@tctc4869 是用你服务器的程序替换了邮件客户端而已,其他完全一样的,以 163 为例,你需要在你服务器的程序里给出至少以下参数:
发件地址(你的邮箱) SMTP 地址(自己去 163 邮箱帮助文档看) 你邮箱的密码 就跟 foxmail 一样咯。。 |
17
TimePPT 2020-09-08 18:04:27 +08:00
|
18
TimePPT 2020-09-08 18:06:16 +08:00
另外,企业级的邮箱验证信或者营销邮件发送,不建议自建邮件发送服务。
用三方吧,维护成本低,到信率相对有保障。 |