arm linux sms,SmsCode

软件简介

SmsCode

04210d90f7a27179dfebba4eb47e4093.jpeg

这是什么

专为需要【手机短信验证码】使用场景而设计的微服务(Micro service),如:用户注册、找回密码、用户身份验证、验证码登录等等。

为什么要造这个轮子

首先我没有找到已实现这些基本功能合一的轮子,至少开源的没有。而实际上我们很多项目开发时经常需要用到手机验证码功能。然而每次重复造轮子又觉得太繁琐且不容易集中控制。于是有了开发一个可复用轮子的想法。那么合计不到1500行Go代码实现这个可复用的手机验证码微服务何乐不为呢?

安装使用

得益于Go语言的跨平台支持,SmsCode可安装在所有主流OS上(Linux,Mac OS X,FreeBSD,Windows,ARM等)

推荐Linux x64上安装SmsCode,编译安装请确保已经在OS上安装了Go的编译环境(GO 1.5+)。

go get -u github.com/xluohome/smscode

cd  $GOPATH/src/github.com/xluohome/smscode

./build  && ./smscode

Docker 部署 Smscode

请参考项目中的Dockerfile 制作Docker image。

功能特性

支持阿里大鱼、云通讯等多个手机短信验证码通道;

自定义多个手机验证码短信服务接口,如:注册服务,重设密码,身份验证等等;

支持手机号归属地限制,只允许指定的归属地手机号接收短信验证码;

每个短信验证码服务可设置每日发送数量限额及失效时间;

内置callback服务,可设置短信验证码发送成功(失败)、验证码验证成功时的回调URL;

可设置短信验证码发送模式:

0x01:只有手机号对应的uid存在时才能发送。

0x02:只有uid不存在时才能发送。

0x03:不管uid是否存在都发送。

通过setuid接口可将现有系统中的用户UID数据导入SmsCode;

内置持久化存储:Goleveldb;

支持Docker部署,SmsCode静态编译(Go 1.7.5)Docker image不到8mb。

以下 代码有很多问题 比如 : 手机号验证 ,点击获取验证码 没有判断 等等 有没有bug import '../css/LoGin.scss' import Nav from "./nav.jsx"; import {useEffect, useState} from 'react'; import {NavLink, useNavigate} from "react-router-dom"; import {useDispatch, useSelector} from "react-redux"; import {lomine, lomineDengLu, lomineimgcaptcha} from "../store/mine.js"; function LoGin() { const nav = useNavigate(); const dispatch = useDispatch(); const {data} = useSelector(state => state.mine.listlomine); useEffect(() => { dispatch(lomine()); }, [dispatch]) // 手机号 const [phone, setPhone] = useState(''); // 图形验证码 const [captcha, setCaptcha] = useState(''); // 短信验证码 const [smsCode, setSmsCode] = useState(''); const handlePhoneChange = (event) => { setPhone(event.target.value) } const handleCaptchaChange = (event) => { setCaptcha(event.target.value); } const handleSmsCodeChange = (event) => { setSmsCode(event.target.value); } const imgclick = () => { dispatch(lomine()); } // 验证码 const Verificationcode = () => { dispatch(lomineimgcaptcha({ form: { 'captchaCode': captcha, 'captchaKey': data?.key, 'mobile': phone } })) } const handleSendCode = () => { console.log('登录') dispatch(lomineDengLu({ form: { 'isParty': false, 'smsCode': smsCode, 'mobile': phone, 'partyData': {} } })) }; return <div className='login'> <Nav sata={'会员登录'}></Nav> <main className='mains'> <div className='disvi'> <span>手机号登录</span> <p>未注册的手机号登录后将自动注册</p> </div> <div className='form'> <dd> <input id="phone" type="tel" value={phone}
06-01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值