后端

laravel框架:手机验证注册,短信提供商

一篇介绍基于laravel框架实现短信验证码注册的demo文章。文章篇幅适中,适宜阅读,有不清楚的地方可以私信博主询问,谢谢大家:)

1. 服务商注册

短信的服务商有很多,这里介绍云片,选择云片作为我们的短信服务商,注册成功后,会有 10 条短信的免费额度,但愿够了。

然后点击注册,注册账户

注册成功后,会要求填写姓名及公司名称,可以填写一下相关信息,学生可以填写班级或学校,使用一下而已,之后可能会有电话回访,不影响使用!

基本每个短信服务商都需要设置以及后才允许发送验证码,这一点每个短信服务商都大同小异

然后我们开始添加,签名一般都是跟随在短信的开始或者末尾的比如:

【云片网】云片网验证功能码:XXXXXXX

【云片网】就是签名

在添加或者之前,如果是还没有添加开发者信息,记得去添加

选个人然后提交证件照片即可,然后添加签名,等待通过审核

添加模板也是差不多的操作

2. 安装相关组件

然后我们需要利用composer安装一个组件,使用phpstorm的Terminal输入以下代码:

composer require "overtrue/easy-sms"

为了方便使用我们需要封装一下该组件的ServiceProvider

在config中添加easysms.php文件

也可以使用Terminal命令行添加:

touch config/easysms.php

然后填入如下内容


app/providers/EasySmsServiceProvider.php

.env 中配置 YUNPIAN_API_KEY

YUNPIAN_API_KEY=*****

.env.example 中也要加入配置示例

YUNPIAN_API_KEY=

3.测试短信

使用artisan调试一下

打开tinker

php artisan tinker

输入以下代码

$sms = app('easysms');
try {
$sms->send(111111, [
'content' => '【您的签名】您的验证码是1234。如非本人操作,请忽略本短信',
]);
} catch (OvertrueEasySmsExceptionsNoGatewayAvailableException $exception) {
$message = $exception->getException('yunpian')->getMessage();
dd($message); 

注意将111111替换为您的手机号,将 【您的签名】您的验证码是1234。如非本人操作,请忽略本短信 改成您的和然后你可能会报如下错误

curl: (60) SSL certificate problem: unable to get local issuer certificate 错误

解决方法:这是因为缺少相关证书导致的,下载cacert .pem

然后打开php.ini文件

[curl] ; A default value for the CURLOPT_CAINFO option. This is required to be an
; absolute path.
curl.cainfo = "****"

将 **** 替换为你的 cacert .pem 的绝对路径即可

然后再次尝试如果返回乱码,就代表你成功了,返回乱码是因为编码问题,但是你的手机还是不会受到短信,因为乱码的模板没有找到,但是你可以在云片的失败发送里看到这个信息,这个时候新建路由与方法,修改方法,再次测试即可!

成功了记得打赏点积分

View Comments

Recent Posts

Flexible Shipping Pro

在WordPress的世界里,…

4天 ago

2023 年 WordPress 中最棒的多语言翻译插件推荐

担心如何翻译您的网站语言以支持…

1年 ago

2023 年 WordPress 中最棒的可视化页面构建器插件推荐

在设计任何页面或网站时,对于不…

1年 ago

Ella 多用途 Shopify 主题

Shopify 主题市场上有许…

1年 ago

AI Engine Pro

喵容今天带来的 AI Engi…

1年 ago

AIKit

喵容今天为您带来 AIKit …

1年 ago