3.4. 构建用户注册接口

本教程最新版为 9.x,当前版本已放弃维护,请阅读最新版本!

1. 新增路由

添加用户注册路由

routes/api.php

.
.
.
$api->version('v1', [
    'namespace' => 'App\Http\Controllers\Api'
], function($api) {
    // 短信验证码
    $api->post('verificationCodes', 'VerificationCodesController@store')
        ->name('api.verificationCodes.store');
    // 用户注册
    $api->post('users', 'UsersController@store')
        ->name('api.users.store');
});

2. 控制器和表单验证类

创建用户 controllerrequest

$ php artisan make:controller Api/UsersController
$ php artisan make:request Api/UserRequest

修改文件如下:

app/Http/Requests/Api/UserRequest.php

<?php

namespace App\Http\Requests\Api;

use Dingo\Api\Http\FormRequest;

class UserRequest extends FormRequest
{
    public function authorize()
    {
        return true;
    }...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
贡献者:5
讨论数量: 37

getelephant
PHP UTF8 正则匹配常见用户名 中英混杂 emoji
9 个点赞 | 2 个回复 | 分享 | 课程版本 5.7
pandance
Undefined index: version???
3 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
zssen
verification_codes 感觉应该说一下
3 个点赞 | 2 个回复 | 分享 | 课程版本 5.5
phpervip
用户注册提交后,为什么保存的 password 没有加密
2 个点赞 | 2 个回复 | 问答 | 课程版本 6.x
Komahui
关于 verification_key 怎么传到接口?
1 个点赞 | 10 个回复 | 问答 | 课程版本 5.5
Innocence6
404 错误?
1 个点赞 | 6 个回复 | 问答 | 课程版本 5.5
dptms
验证码手机与提交手机的验证?
1 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
leoleoasd
有关 Dingo\API\Http\FormRequest 这个类的疑问?
1 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
CaiBird008
navicat 怎么连接这个项目的数据库?
0 个点赞 | 12 个回复 | 问答 | 课程版本 5.5
Zhangzhuow
不用做 sign 吗?
0 个点赞 | 10 个回复 | 问答 | 课程版本 5.5
pangpang
请问下 为什么返回的状态码不对
0 个点赞 | 8 个回复 | 问答 | 课程版本 5.5
aaroncoding
关于参数的验证应该可以少这一步?
0 个点赞 | 6 个回复 | 问答 | 课程版本 5.7
mindgame1976
为什么 name 取中文报错,取英文就 OK
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.7
Jeepin
有一点还是不理解?
0 个点赞 | 5 个回复 | 问答 | 课程版本 5.5
walt-white
请问客户端参数加密了,request 怎么接受数据验证
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.8
Narcissus
用户创建成功,通过 DingoApi 提供的 created 方法返回合适吗?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
WayneJ
use Illuminate\Support\Facades\Cache; 和 \Cache 有什么区别吗?
0 个点赞 | 4 个回复 | 问答 | 课程版本 5.5
Trenton
错误提示 Illuminate\Http\Resources\JSON\Resource; 这个找不到
0 个点赞 | 3 个回复 | 问答 | 课程版本 6.x
Jeepin
结果出现 HTML 的代码是什么原因?
0 个点赞 | 3 个回复 | 问答 | 课程版本 5.5
working
hash_equals防时序攻击的问题
0 个点赞 | 2 个回复 | 问答 | 课程版本 9.x
phpervip
邮箱注册时遇到的问题,前端是vue (已解决)
0 个点赞 | 2 个回复 | 问答 | 课程版本 7.x
archy
Call to undefined function str_random ()
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.8
猪猪
报错 API 用户控制器中的 response 没定义
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.8
gyp719
有些不明白这个 $request->verification_key 是怎么来的?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.7
livelys
关于 name 的正则验证,这个地方应该不能插入汉字吧?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.7
finley
API 接口返回是否应该封装方法?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
怎么没有收到验证码了??????
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
吃瓜群众
关于这一句代码的疑问 return $this->response->created () ?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
louduanxiong
hash_equals 可防止时序攻击的字符串比较?
0 个点赞 | 2 个回复 | 问答 | 课程版本 5.5
xll123
未经验证可强制修改手机号
0 个点赞 | 1 个回复 | 问答 | 课程版本 8.x
dryang
这个不知道是一回事?能否解决一下??谢谢!!!!
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
苟常兴
片云短信报 400 错误,请问是什么原因?
0 个点赞 | 1 个回复 | 问答 | 课程版本 5.5
phpervip
$verifyData 为 null , 总是报验证码失效 (已解决)
0 个点赞 | 0 个回复 | 分享 | 课程版本 6.x
hehorange
应该在验证码输入错误的时候也删除对应缓存
0 个点赞 | 0 个回复 | 问答 | 课程版本 5.5