精华内容
下载资源
问答
  • * 用户注册成功发送短信验证 */ public void sendMail(String email); 第二步 在serviceImpl中写实现方法: public void sendMail(String email) { //创建简单的邮件对象 SimpleMailMessage message = new ...

    怎样在javaWeb中当用户注册成功的时候发送短信呢?

    第一步

    在你写的interface中写
    /**
    * 用户注册成功发送短信验证
    */
    public void sendMail(String email);

    第二步

    在serviceImpl中写实现方法:

    public void sendMail(String email) {
            //创建简单的邮件对象
            SimpleMailMessage message = new SimpleMailMessage();
            //设置邮件对象参数  从哪方发出邮件
            message.setFrom("邮箱@163.com");
            //设置邮件的接收方
            message.setTo(email);
            //设置邮件的主题
            message.setSubject("【***!!】");
            //设置邮件内容
            message.setText("恭喜您注册成功");
            //发送邮件
            mailSender.send(message);
            System.out.println("邮件发送成功");
        }
        并且在resources添加配置文件:
        <?xml version="1.0" encoding="UTF-8" ?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xmlns:p="http://www.springframework.org/schema/p"
           xmlns:context="http://www.springframework.org/schema/context"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
    	   http://www.springframework.org/schema/beans/spring-beans.xsd
    	   http://www.springframework.org/schema/context
    	   http://www.springframework.org/schema/context/spring-context.xsd">
        <!-- Spring提供的发送电子邮件的高级抽象类 -->
        <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
            <!-- 邮件smtp服务器地址 -->
            <property name="host" value="smtp.163.com" />
            <!-- 邮箱用户名 -->
            <property name="username" value="邮箱@163.com" />
            <!-- 邮箱密码 授权码-->
            <property name="password" value="邮箱授权码" />
            <!-- 编码格式 -->
            <property name="defaultEncoding" value="UTF-8"/>
            <!-- 邮箱服务器属性设置 -->
            <property name="javaMailProperties">
                <props>
                    <!-- 邮箱服务器是否支持验证 -->
                    <prop key="mail.smtp.auth">true</prop>
                    <!-- 邮箱服务器连接超时时间  毫秒-->
                    <prop key="mail.smtp.timeout">300000</prop>
                </props>
            </property>
        </bean>
    </beans>
    

    第三步

    (1)在web层中写入你的邮箱号添加:

    <div class="control-group">
    						<label for="inputPassword" class="control-label">短信验证码:</label>
    						<div class="controls">
    							<input type="text" placeholder="短信验证码" ng-model="smscode"  class="input-xfat input-xlarge">
    							<a ng-click="sendCode()" href="#">获取短信验证码</a>
    						</div>
    					</div>
    

    (2)然后在controller里新建一个java EmailFormatChechUtils 添加正则表达式:

    public class EmailFormatChechUtils {
    
        public static boolean isEmail(String email){
            String reg = "^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$";
            Pattern pattern = Pattern.compile(reg);
            Matcher matcher = pattern.matcher(email);
            return matcher.matches();
        }
    }
    

    (3)在User里边添加:

    /**
         * 判断一下邮箱格式和是否发送成功了
         */
        @RequestMapping("/sendMail")
        public Result sendMail(String email){
            if(!EmailFormatChechUtils.isEmail(email)){
                return new Result(false,"邮箱格式不正确");
            }
            try {
                userService.sendMail(email);
                return new Result(true,"邮箱发送成功");
            }catch (Exception e){
                e.printStackTrace();
                return new Result(false,"邮箱发送失败");
            }
        }
    
    (4)js中controller里添加:
    
     //输入邮箱
        $scope.sendMail = function () {
            if ($scope.entity.email == null) {
                alert("请输入邮箱:");
            }
    
            userService.sendMail($scope.entity.email).success(
                function (response) {
                    alert(response.message);
    
                }
            );
        }
    
    (5)js里service中的*****.js里添加:
    
     //邮箱
    	this.sendMail = function (email) {
    		return $http.get("../user/sendMail.do?email=" + email);
    
    	}
    
    展开全文
  • 部分黑客可能出于恶意竞争或短信轰炸他人的目的,攻击企业短信服务接口,盗刷企业的验证短信,造成企业资金损失。那么企业应该如何避免短信接口被恶意调用?本文为大家介绍一些简单实用的方法。 ➤ 避免方法 1.设置...

    短信服务接口安全是在开发或对接短信接口时尤为关注的问题。部分黑客可能出于恶意竞争或短信轰炸他人的目的,攻击短信服务接口,盗刷验证短信,造成资金损失。那么应该如何避免短信接口被恶意调用?本文为大家介绍一些简单实用的方法。#短信防火墙#

    在这里插入图片描述

    ➤ 避免方式

    1.设置发送时间间隔

    可以通过设置短信验证码的发送时间间隔避免短信被调用,频繁地向非应用用户发送验证码短信。短信发送时间间隔一般设置为60s、100s、120s,一般来讲设置60s的最为常见。

    2.增加图形验证码

    在发送验证码短信前增加图形验证码,可以增加黑客攻击的成本和难度。对真实用户来说,图形验证操作很简单,对黑客来说,还要增加图片识别的功能,破解的难度相对提升。图形验证码有文字、字母、滑动拼图等多种形式。根据需要自行选择即可,推荐选择用户体验相对较高的。

    3.限制同号码、同IP的发送次数

    通过限制同一个手机号码、同一个IP的短信发送次数,可以很好地避免黑客使用固定的手机号码和网络对接口进行盗刷。一般同一个号码会设置5-10次的限制,达到限制次数后点击重新发送无用。限定IP和限制手机号的原理类似,但是可能出现很多共用wifi的用户使用同一个IP的情况,限制IP可能会存在较高的误伤率,影响真实用户体验,所以需要斟酌选择限制数量。

    4.增加短信防火墙

    在发送短信验证码前接入短信防火墙接口,可以很好地避免黑客使用各种攻击手段对短信接口进行盗刷。短信防火墙会通过发送验证码请求的手机号、IP、设备指纹等多个方面来分析和预测请求是否正常。并且对非正常用户请求实施拦截,实时监控每一条短信验证码请求。不仅能够保证良好的用户体验,还能精准识别应对黑客的攻击。所以,比较推荐使用这种方式。

    ➤ 注意事项

    1.组合使用:单一方法对黑客的阻挡效果是有限的,部分黑客还能找到破解的方法,所以建议组合2-3个方法同时使用。如果选择第4种方式,则不需要考虑1、3,可以将2、4组合使用。

    2.提前实施:最好在对接短信服务接口的同时实施防护方案,不然在出现问题后,受应用版本发布的影响,可能无法立即实施一些措施,进而造成一定的资金损失。

    3.考虑用户体验:除了短信防火墙外,其他方式都会对用户操作造成一定限制或增加用户操作,企业在设计防护方案时,要同时考虑实际的用户体验。

    ➤ 总结

    这里为大家介绍了四个简单易行的避免短信服务接口被调用的方法,以及实际使用中的注意事项。限制短信的发送频率,限制同一电话号码、同一IP的短信发送次数,增加图形验证码,增加短信防火墙,都可以提高黑客攻击接口的难度。在实际的接口防护中,组合使用可以大大降低企业接口被攻击的风险,但是要注意确保真实用户的使用体验。防护方案最好在对接短信接口时同时实施,避免受到攻击后因难以立即发布新的应用版本遭受损失。


    这篇文章到这里就结束了,感谢您的观看~
    作者:香芋味的猫丶

    展开全文
  • 我从来没有接触过用 JAVA 来发送短信,过去做得项目都只是增,删,查,改。 请问该如何运用JAVA 来实现发送语音验证请求,语音验证服务?请问前辈们怎样做呀? 谢谢! ...
    我从来没有接触过用 JAVA 来发送短信,过去做得项目都只是增,删,查,改。

    请问该如何运用JAVA 来实现发送语音验证请求,语音验证服务?请问前辈们怎样做呀? 谢谢!
    展开全文
  • //用户输入了手机号码后,点击"获取验证短信"按钮,系统会根据用户输入的手机号码发送一条短信到用户输入的手机号码上面 当然输入的手机号码可以接收到一条短信的.... //那么这个功能是怎样实现的呢? ...

    最近在项目中遇到这样的一个需求:

    //用户输入了手机号码后,点击"获取验证短信"按钮,系统会根据用户输入的手机号码发送一条短信到用户输入的手机号码上面

    当然输入的手机号码可以接收到一条短信的....

    //那么这个功能是怎样实现的呢?

    这就是我写这篇blog的初衷啦....

    步骤:

    //一,申请一个账号

    这个根据你项目或者公司的需要,申请一个账号即可。那么去哪里申请呢?

    我项目中用到的是:(易信通短信平台)http://ms.139130.net/

    当然你也可以去其他平台申请....

    //二,API

    申请到了账号了以后,如果你只希望网页版的短信发送,可以在http://ms.139130.net/进行登录,然后就可以进行短信发送了。

    但是如果需要整合到我们项目里面,这时候就需要使用易信通那边的API了。这个开发者可以联系他们的技术部门,拿到相应的API文档

    //三,未曾谋面,完成短信发送功能

    作为开发者,有很好的API文档,(或者可以联系到他们的技术人员),我们不需要见面,可以完成我们的功能。

    //注:由于没有得到企业的许可,这里有很多的资源不能向大伙儿展示,还望理解

    转载于:https://www.cnblogs.com/hongten/archive/2013/04/19/hongten_api.html

    展开全文
  • 按钮,系统会根据用户输入的手机号码发送一条短信到用户输入的手机号码上面 当然输入的手机号码可以接收到一条短信的.... //那么这个功能是怎样实现的呢? 这就是我写这篇blog的初衷啦.... 步骤: ...
  • 短信验证码工作原理

    2019-07-07 23:02:00
    那么,问题来了:短信验证码在网络上的工作流程是怎样的呢? 短信验证码内部工作流程 1.使用random函数随机生成一个验证码,位数可以自己定(一般是4位、6位验证码) 2.调用短信运营商的接口,并向其发送手机号和...
  • 一个可以申请两个微信号码吗?...第三步: 提交你的手机号,根据提示发送短信验证。 第四步: 提示有两种,1.你已注册可直接登陆。2.不是我的微信号,选择2不是我的微信登录后。 第五步: 登录后选择..
  • C# winform典型系统开发模板

    热门讨论 2011-09-17 15:13:21
     9.3.3 已发送短信管理 213  9.3.4 接收短信实现 215  9.3.5 常用联系人管理 219  9.3.6 常用短语管理 221 第10章 桌面精灵模块   10.1 概述 226  10.2 关键技术 226  10.2.1 阴阳历...
  • 9.3.3 已发送短信管理 9.3.4 接收短信实现 9.3.5 常用联系人管理 9.3.6 常用短语管理 第10章 桌面精灵模块 10.1 概述 10.2 关键技术 10.2.1 阴阳历转换算法 10.2.2 调用系统API实现鼠标穿透效果 10.2.3 修改注册表...
  • 9.3.3 已发送短信管理 9.3.4 接收短信实现 9.3.5 常用联系人管理 9.3.6 常用短语管理 第10章 桌面精灵模块 10.1 概述 10.2 关键技术 10.2.1 阴阳历转换算法 10.2.2 调用系统API实现鼠标穿透效果 10.2.3 修改注册表...
  • 9.3.3 已发送短信管理 9.3.4 接收短信实现 9.3.5 常用联系人管理 9.3.6 常用短语管理 第10章 桌面精灵模块 10.1 概述 10.2 关键技术 10.2.1 阴阳历转换算法 10.2.2 调用系统API实现鼠标穿透效果 10.2.3 修改注册表...
  • C#开发典型模块大全

    2014-03-12 18:11:22
    9.3.3 已发送短信管理 213 9.3.4 接收短信实现 215 9.3.5 常用联系人管理 219 9.3.6 常用短语管理 221 第10章 桌面精灵模块 10.1 概述 226 10.2 关键技术 226 10.2.1 阴阳历转换算法 226 10.2.2 ...
  • K3 Cloud BOS 百问百答

    2014-09-25 08:40:23
    一、BOS集成开发环境 1 ...6.3【摘要】:移动平台开发的移动表单、移动单据如何验证实际效果? 34 6.4【摘要】:企业使用Cloud移动应用的服务器如何部署? 34 6.5【摘要】:Cloud移动应用及文档下载地址。 35
  • 实例095 使用ErrorProvider组件验证文本框输入 130 实例096 利用ErrorProvider组件查看数据集中的错误 132 3.3 EventLog组件 134 实例097 使用EventLog组件读写Windows系统事件日志 134 实例098 使用Event...
  • asp.net知识库

    2015-06-18 08:45:45
    页面一postback,它就显示页面的最顶端,怎样让它定位在某一位置? 如何保证页面刷新后的滚动条位置 清除网页历史记录,屏蔽后退按钮! 如何传值在2个页面之间 :要求不刷新父页面,并且不能用Querystring传值 Asp...
  •  实例095 使用ErrorProvider组件验证文本框输入 130  实例096 利用ErrorProvider组件查看数据集中的错误 132  3.3 EventLog组件 134  实例097 使用EventLog组件读写Windows系统事件日志 134  实例098 ...
  • 654导航网站源码

    2021-03-30 23:28:15
    注意邮箱信息要填写,不然发短信可发不了!好了,我们来看首页拉,必须创建一下哦!这里就是了。好可以了,但发现[小游戏]的连接在那里改呢?可以了吧!实用酷站在那呢?栏目可以增加吗?那里,这样就增加一个栏目了...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向本机...
  • C#程序开发范例宝典(第2版).part02

    热门讨论 2012-11-12 07:55:11
    实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • C#程序开发范例宝典(第2版).part13

    热门讨论 2012-11-12 20:17:14
    实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...
  • 实例104 使用ErrorProvider组件验证文本框输入 150 3.3 EventLog组件 151 实例105 使用EventLog组件读写Windows系统事件日志 151 实例106 使用EventLog组件保存Windows系统日志 153 实例107 使用EventLog组件向...

空空如也

空空如也

1 2
收藏数 40
精华内容 16
关键字:

怎样发送短信验证