You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.0 KiB
41 lines
1.0 KiB
<?php
|
|
|
|
namespace App\Controller\v3;
|
|
|
|
use App\Controller\BaseController;
|
|
use App\Request\v3\VerifyCodeRequest;
|
|
use App\Service\v3\Interfaces\VerifyCodeServiceInterface;
|
|
use Psr\Http\Message\ResponseInterface;
|
|
use Hyperf\Di\Annotation\Inject;
|
|
|
|
/**
|
|
* 短信相关
|
|
* Class SmsController
|
|
* @package App\Controller\v3
|
|
*/
|
|
class SmsController extends BaseController
|
|
{
|
|
/**
|
|
* @Inject
|
|
* @var VerifyCodeServiceInterface
|
|
*/
|
|
protected $verifyCodeService;
|
|
|
|
/**
|
|
* 获取手机验证码,发送验证码短信
|
|
* 1、获取手机号并验证
|
|
* 2、发送短信
|
|
* 3、存储验证码,保留用于校验,有失效时间
|
|
* @param VerifyCodeRequest $request
|
|
* @return ResponseInterface
|
|
*/
|
|
public function getVerifyCode(VerifyCodeRequest $request)
|
|
{
|
|
// 获取参数
|
|
$params = $request->validated();
|
|
// 获取并发送验证码
|
|
$this->verifyCodeService->make($params['user_id'], $params['tel']);
|
|
|
|
return $this->success([]);
|
|
}
|
|
}
|