当前位置: 首页 > 知识库问答 >
问题:

Java-验证电子邮件与互联网地址

殳凯捷
2023-03-14

我得到了这个方法:

public static boolean isValidEmailAddress(String email) {
       boolean result = true;
       try {
          InternetAddress emailAddr = new InternetAddress(email);
          emailAddr.validate();
       } catch (AddressException ex) {
          result = false;
       }
       return result;
}

但这给了我一个例外:

java.lang.NullPointerExc农田javax.mail.internet.地址arser.tokenize地址(地址arser.java:645)javax.mail.internet.地址arser.parse地址(地址arser.java:113)javax.mail.internet.互联网地址。(互联网ddress.java:70)在javax.mail.internet.互联网地址。(InternetAddress.java:61)在控制器。CtrlUser.is控制器上的ValidEmail地址(CtrlUser.java:166)。CtrlSeller.register(CtrlSeller.java:41)在testController。CtrlSellerUnitTestCase.test注册(CtrlSellerUnitTestCase.java:41)在sun.reflect.NativeMEDAccessorIpmpl.invoke0(本机方法)在sun.reflect.NativeMEDAccessorInp. invoke(NativeMEDAccessorInp. java: 39)在sun.反射。在java. lang.反射中调用(委托方法访问或执行. java: 25)。java: 597)在org. Junit. runners.模式。FrameworkMEDOD1. runReflropeCall(FrameworkMEDODO. java: 45)在org. Junit. interal. runners. Model。java: 15)在org. Junit. runners. model。框架工作方法。java: 20)在org. Junit. interal. runners. statements.评价(RunBefors. java: 28)在org. Junit. interal. runners. statements。评价(RunAfters. java: 30)在org. Junit. runner。在org. Junit. runners.BlockJUnit4ClassRunner. runchild(BlockJUnit4ClassRunner. java: 68)在org. Junit. runners。BlockJUnit4ClassRunner. runchild(BlockJUnit4ClassRunner. java: 47)在org. Junit. runners。在org. Junit. runners3美元。在org. Junit. runners1美元。........................................................................................................................

共有3个答案

后源
2023-03-14

请尝试以下代码

java.net.IDN.toASCII    

public static boolean isValidEmail(String email) {
    boolean result = true;
    try {
        InternetAddress emailAddr = new InternetAddress(java.net.IDN.toASCII(email));
        emailAddr.validate();
    } catch (AddressException ex) {
        result = false;
    }
    System.out.println("==> "+result+" : "+email);
    return result;
}
娄飞鸾
2023-03-14

它对我有用-检查看看你是否真的传递了一个有效的字符串。看起来你正在发送null作为你的电子邮件参数

萧英光
2023-03-14

确保您传递的电子邮件参数不是null

 类似资料:
  • 我的电子邮件验证有问题。我的错误是“用户为空”,因此它不会发送验证电子邮件,但会在控制台和My console.firebase.google中显示登录uid。com项目显示已注册的电子邮件。我应该更改什么,以便发送电子邮件,并且在用户验证其电子邮件之前不允许访问?我读过文件,但想不出来。提前谢谢你。

  • 我有一张登记表,上面有姓名、电子邮件和密码。注册时,会向用户的电子邮件地址发送一个确认链接。但在发送链接之前,我需要验证电子邮件地址。我使用了: 它显示的任何电子邮件都有效,例如, 我从获得的电子邮件并将其存储在中。 我到底要怎么做才能让它成功?

  • 我想使用亚马逊的简单电子邮件服务发送电子邮件。 我验证了我的域名以及我想发送的电子邮件地址。 对于两者,它都表示。 现在,当我使用AWS控制台的发送测试电子邮件向myemail@outlook.com发送测试电子邮件时,我只收到错误消息: 电子邮件地址未验证。以下身份在区域EU-WEST-1中检查失败:myemail@outlook.com(请求ID: 9fb78de1-2673-11e6-bbb

  • 我正在提示我的应用程序用户提供电子邮件凭据。 在用户插入电子邮件并通过后,我想验证该帐户。 我正在使用javax。邮政有没有办法验证帐户?只确保凭据确实有效——否则我想显示一个无效用户并传递消息。 也许是某种表演方式: 并在不发送任何内容的情况下检查身份验证异常。

  • 问题内容: 有谁知道如何在Swift中验证电子邮件地址?我发现此代码: 但我无法将其翻译为Swift。 问题答案: 我会用: 对于低于3.0的Swift版本: 对于低于1.2的Swift版本:

  • 我想使用Google表单填充Google电子表格。其中一个字段是电子邮件地址,我需要对照我们组织的电子邮件列表来验证这一点--换句话说,强制人们使用有效的和现有的电子邮件地址。 我们的组织使用谷歌应用程序。该表单将由在我们组织中的用户创建,并且只有来自我们组织/域的电子邮件地址才被认为是有效的。

  • 每当我在Firebase中使用电子邮件/密码身份验证提供程序时,提供程序都会在成功注册时发送一个无记名令牌,即使是。是否有一种开箱即用的方法将电子邮件/密码身份验证提供程序配置为在用户验证其电子邮件地址之前不发送无记名令牌(并返回403错误)? 请注意,我知道如何创建用户、登录用户、发送验证电子邮件等。。。使用firebase v9。x通过firebase/auth中的方法创建用户(使用Email

  • 问题内容: 我有这个EditText定义: 注意,EditText具有使用电子邮件地址规范定义的inputType。Android是否内置任何可验证电子邮件地址输入类型的内容,还是都必须手动完成?它允许我输入无效数据,所以我对它的用途感到好奇。 谢谢。 问题答案: 在这里,通过输入电子邮件类型,您可以将电子邮件类型的键盘设置为“ @”和“。”。关键字将显示在键盘上。 更好的解决方案是通过以下功能比