首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >发送前的JavaMail密码认证

发送前的JavaMail密码认证
EN

Stack Overflow用户
提问于 2014-08-25 21:17:47
回答 2查看 6.3K关注 0票数 2

我怎样才能抓住AuthenticationFailedExceptions?

我基本上有一个登录屏幕,我从用户名获取文本,从密码获取文本。我正在使用Gmail身份验证。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Properties properties = new Properties();
properties.put("mail.smtp.auth", "true");
properties.put("mail.smtp.starttls.enable", "true");
properties.put("mail.smtp.host","smtp.gmail.com");
properties.put("mail.smtp.port","587");

Session session = Session.getInstance(properties, 
            new javax.mail.Authenticator() {
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(username, password);
                }
            }
    );

如何检查身份验证是否成功?我知道当调用像Transport.send(message)这样的语句时会出现错误。但是我想检查身份验证是否成功--实际上并不是发送消息。谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-25 22:13:56

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Transport transport;
try {
    transport = session.getTransport("smtp");
    transport.connect("smtp.gmail.com", username, password);
    transport.close();

    //Authentication success
} catch (AuthenticationException e) {
    System.out.println("Authentication Exception");
     //Authentication failed. Handle this here.
}

这部分代码在OP中的原始代码部分之后,将能够进行验证,前提是用户名和密码已经定义。

如果执行catch语句,身份验证失败。如果没有,身份验证就成功了。

票数 4
EN

Stack Overflow用户

发布于 2014-08-25 22:05:59

每当您试图发送带有错误凭据的邮件时,它都会抛出

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 javax.mail.AuthenticationFailedException So, you can catch that exception in catch block to resolve your problem

见docs:[http://docs.oracle.com/javaee/1.4/api/javax/mail/AuthenticationFailedException.html]

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
try
{
    Session session = Session.getInstance(properties, 
                new javax.mail.Authenticator() {
                    protected PasswordAuthentication getPasswordAuthentication() {
                        return new PasswordAuthentication(username, password);
                    }
                }
        );
}
catch(AuthenticationFailedException e)
{
    // your action
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25498542

复制
相关文章
javaMail发送邮件随笔
1:javax.mail.NoSuchProviderException: No provider for smpt
一觉睡到小时候
2019/07/03
7350
javaMail发送邮件随笔
使用JavaMail发送邮件
  我们在实际开发中,常常会遇到需要使用java代码进行发送邮件的需求,我们可以通过这种方式向用户推送通知等。
阿豪聊干货
2018/08/09
7530
使用JavaMail发送邮件
SMTP协议:Simple Mail Transfer Protocol,即简单邮件传输协议,用于发送电子邮件
星哥玩云
2022/07/11
1.3K0
使用JavaMail发送邮件
Java Web JavaMail 邮件发送
  JavaMail是java技术当中用来发送邮件和接收邮件的API,JavaMail在java开发中是应用比较
Hongten
2018/09/13
1.3K0
Android之使用JavaMail发送邮件
            首先,我们原本可以直接通过Intent来调用系统邮件客户端发送邮件,但是这种发送需要跳转activity很不方便,所以我打算自己通过smtp协议发送邮件。很幸运,在google code上有一个现成的javaMail的java邮件客户端,我们只需要调用其中的接口就可以了。下面放出使用javaMail的一个demo源代码。 1.自己封装一个邮件发送类MailSender。 public class MailSender extends Authenticator { private
forrestlin
2018/05/23
1.2K0
使用 JavaMail 实现邮件发送与收取
因为上一篇已经实现了James的配置,那接下来就是利用javaMail实现邮件的发送和收取。
林老师带你学编程
2022/11/30
1K0
基于JavaMail的Java邮件发送:简单快速上手
JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。我们可以基于JavaMail开发出类似于Microsoft Outlook的应用程序。
陶然同学
2023/02/27
1.1K0
基于JavaMail的Java邮件发送:简单快速上手
实用代码|javaMail发送邮件(文末重磅资源!)
重磅好消息:小编考虑到同学们对学习资源的迫切需求,近期将整理出学习视频库和电子书库,你想要的资源全在这里,该资源永久有效,不断更新,敬请期待!
KEN DO EVERTHING
2019/01/17
8271
SpringBoot 2.0 集成 JavaMail ,实现异步发送邮件
(1)、Message 类: javax.mail.Message 类是创建和解析邮件的一个抽象类 子类javax.mail.internet.MimeMessage :表示一份电子邮件。 发送邮件时,首先创建出封装了邮件数据的 Message 对象, 然后把这个对象传递给邮件发送Transport 类,执行发送。 接收邮件时,把接收到的邮件数据封装在Message 类的实例中,从这个对象中解析收到的邮件数据。
知了一笑
2019/07/19
1.9K0
第七章:SpringBoot整合JavaMail发送邮件
JavaMail是SUN提供给广大Java开发人员的一款邮件发送和接受的一款开源类库,支持常用的邮件协议,如:SMTP、POP3、IMAP,开发人员使用JavaMail编写邮件程序时,不再需要考虑底层的通讯细节如:Socket而是关注在逻辑层面。JavaMail可以发送各种复杂MIME格式的邮件内容,注意JavaMail仅支持JDK4及以上版本。虽然JavaMail是JDK的API但它并没有直接加入JDK中,所以我们需要另外添加依赖,下面我们开始讲解本章的内容。 本章目标 将Java提供的JavaMail类
恒宇少年
2018/06/27
1.3K1
JavaMail邮件发送-能发送附件和带背景音乐的邮件的小系统
这里使用的是JavaMail技术,前台使用了fckeditor做邮件美化,由于只是示例,后台发送时只是将邮件保存在本地,但是可以查看,如果需要实际发送,请参考我的其他博客文章,我写了很多关于邮件发送的示例!
Java帮帮
2018/08/06
1.1K0
JavaMail邮件发送-能发送附件和带背景音乐的邮件的小系统
JavaMail-发送一封简单邮件(附带附件)
以上的工具类有个进行了重载的方法,因为对于没有附件的邮件和有附件的邮件,在构造邮件对象时是不一样的,有附件的邮件会稍微复杂一点。接着是测试类。
雨临Lewis
2022/01/11
4580
雅虎日本的无密码认证
雅虎日本是日本最大的媒体公司之一,提供搜索、新闻、电子商务和电子邮件等服务。每月有超过5000万用户登录雅虎日本的服务。
智影Yodonicc
2022/05/12
1.3K0
雅虎日本的无密码认证
redis配置认证密码
yum方式安装的redis配置文件通常在/etc/redis.conf中,打开配置文件找到
用户8851537
2021/07/27
1.1K0
MySQL原生密码认证
原文地址: http://mp.weixin.qq.com/s?__biz=MzAwMDU2ODU3MA==&mid=2247484640&idx=1&sn=5a25f1e15b50505381058
保持热爱奔赴山海
2019/09/17
1.2K0
Java Mail(二):JavaMail介绍及发送一封简单邮件
JavaMail是SUN提供给开发人员在应用程序中实现邮件发送和接收功能而提供的一套标准开发类库,支持常用的邮件协议,如SMTP、POP3、IMAP,开发人员使用JavaMail编写邮件程序时,无需考虑底层的通信细节(Socket),JavaMail也提供了能够创建出各种复杂MIME格式的邮件内容的API。使用JavaMail,我们可以实现类似OutLook、FoxMail的软件。虽然JavaMail(仅支持JDK4及以上)也是Java的API之一,但是却没有直接加入到JDK中,所以我们需要另
高爽
2018/01/15
1.7K0
Java Mail(二):JavaMail介绍及发送一封简单邮件
邮件实现详解(四)------JavaMail 发送(带图片和附件)和接收邮件
该文章介绍了如何通过JavaMailSender发送邮件,并附带上图片和附件。同时,介绍了MailReceiver实现接收邮件。
IT可乐
2018/01/04
3.5K0
邮件实现详解(四)------JavaMail 发送(带图片和附件)和接收邮件
Redis使用认证密码登录
Redis默认配置是不需要密码认证的,也就是说只要连接的Redis服务器的host和port正确,就可以连接使用。 这在安全性上会有一定的问题,所以需要启用Redis的密码认证功能,增加Redis服务器的安全性。
Lansonli
2021/10/09
5.5K0
[WCF安全系列]认证与凭证:用户名/密码认证与Windows认证
如果要给认证下一个定义,我个人的倾向这样的定义:认证是确定被认证方的真实身份和他或她申明(Claim)的身份是否相符的行为。认证方需要被认证方提供相应的身份证明材料,以鉴定本身的身份是否与声称的身份相符。在计算机的语言中,这里的身份证明有一个专有的名称,即“凭证(Credential)”,或者用户凭证(User Credential)、认证凭证(Authentication Credential)。 一、凭证的属性 最好的设计就是能够尽可能的模拟现实的设计。对于安全认证来说,在现实生活中有无数现成的例子。比
蒋金楠
2018/02/07
2.4K0
点击加载更多

相似问题

在认证前加密密码

11

JavaMail保存密码

13

IMAP的Javamail和TLS认证

23

发送没有用户和密码的javamail邮件

11

RoR + Devise + Carrierwave:上传图片前通过密码认证

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文