laravel注册api编写

一、注册api

1.1 创建注册路由

注册路由我们把它归属到认证模块去,在routes/auth.php下去写:

<?php

use App\Http\Controllers\Auth\RegisterController;

$api = app('Dingo\Api\Routing\Router');

$api->version('v1', function ($api) {
    // 路由组
    $api->group(['prefix' => 'auth'], function ($api) {
        // 注册
        $api->post('register', [RegisterController::class, 'store']);

        
    });
});

在这里插入图片描述

1.2 创建注册控制器

运行命令php artisan make:controller Auth/RegisterController,创建注册控制器。
在这里插入图片描述

1.3 创建表单验证类

运行命令php artisan make:request Auth/RegisterRequest
在这里插入图片描述
在这里插入图片描述
可以看到Http文件夹下就多了Requests文件夹以及验证文件。
效仿基础控制器,我们再建一个基础验证类。
运行命令:php artisan make:request BaseRequest
在这里插入图片描述
在这里插入图片描述


修改BaseRequest.php为如下:

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;

class BaseRequest extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }
}

然后RegisterRequest.php继承BaseRequest类,并写入规则:

<?php
<?php

namespace App\Http\Requests\Auth;

use App\Http\Requests\BaseRequest;
use Illuminate\Foundation\Http\FormRequest;

class RegisterRequest extends BaseRequest
{
    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'name' => 'required|max:16',
            'email' => 'required|email|unique:users',
            'password' => 'required|min:6|max:16|confirmed',
        ];
    }
}

unique:users -> 邮箱在users表中唯一。
confirmed -> 表示必须要传一个password_confirmation确认密码字段并且和password字段值相等。


然后注册控制器不使用原始的request,而使用我们自己写的:

<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\BaseController;
use App\Http\Requests\Auth\RegisterRequest;
use App\Models\User;
use Illuminate\Http\Request;

class RegisterController extends BaseController
{
    /**
     * 用户注册 
     */
    public function store(RegisterRequest $request) {
        $user = new User();
        $user->name = $request->input('name');
        $user->email = $request->input('email');
        $user->password = bcrypt($request->input('password'));
        $user->save();
        return $this -> response -> created();
    }
}

1.4 测试

测试:
在这里插入图片描述
在这里插入图片描述

1.4.1 配置语言包

可以看到我们的验证提示都是英文的,我们可以去下载中文包去配置。
laravel配置语言包请查看这篇文章

1、默认效果

配置完中文语言包的效果:
在这里插入图片描述


2、自定义提示消息

如果说我们不想要它默认的,想要自定义的,我们可以在RegisterRequest.php这样写(其他类似):

public function messages() {
        return [
            'email.unique' => '邮箱已经存在,你还想注册?怎么不上天呢?'
        ];
    }

在这里插入图片描述
效果:
在这里插入图片描述

1.4.2 更改时区

config/app.php修改:
'timezone' => 'Asia/Shanghai'
在这里插入图片描述

在学习的php的路上,如果你觉得本文对你有所帮助的话,那就请关注点赞评论三连吧,谢谢,你的肯定是我写博的另一个支持。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: 答:Laravel 是一个免费的开源 PHP 框架,用于快速开发现代的 Web 应用程序。它提供了一组强大的工具,可以帮助开发者快速构建出功能丰富的 Web 应用程序。它具有强大的路由功能和模板系统,可以帮助开发者迅速构建出功能完善的 Web 应用。 ### 回答2: Laravel 是一种流行的 PHP 框架,用于快速开发 Web 应用程序。以下是一个简单的示例,展示如何编写一个基本的 Laravel 程序。 首先,确保你已经安装了 Laravel 环境。打开终端或命令提示符,并转到你的项目目录。运行以下命令以创建新的 Laravel 项目: ``` composer create-project --prefer-dist laravel/laravel your-project-name ``` 这将下载 Laravel 的最新版本并创建一个名为 `your-project-name` 的项目目录。 进入项目目录,并使用以下命令启动内置的开发服务器: ``` php artisan serve ``` 这将在本地主机上的默认端口(通常是 `http://localhost:8000`)启动应用程序。 现在,打开项目目录下的 `routes/web.php` 文件,该文件定义了应用程序的路由。你可以添加自己的路由以及对应的处理函数。例如,以下代码将创建一个指向 `/hello` 路由的 GET 请求,并调用 `hello()` 函数来处理请求: ```php Route::get('/hello', function () { return 'Hello, Laravel!'; }); ``` 接下来,我们需要创建 `hello()` 函数。打开项目目录下的 `app/Http/Controllers` 文件夹,并创建一个名为 `HelloController.php` 的文件。在该文件中,添加以下代码来定义 `hello()` 函数: ```php <?php namespace App\Http\Controllers; use Illuminate\Http\Request; class HelloController extends Controller { public function hello() { return 'Hello, Laravel!'; } } ``` 现在,我们需要将 `/hello` 路由指向 `hello()` 函数。在 `routes/web.php` 文件中,修改代码如下: ```php use App\Http\Controllers\HelloController; Route::get('/hello', [HelloController::class, 'hello']); ``` 保存文件后,刷新浏览器,访问 `/hello` 路径,你将会看到 "Hello, Laravel!" 的输出。 这只是 Laravel 的一个简单示例,仅仅涉及到了路由和控制器的使用。Laravel 还提供了许多特性和功能,如数据库操作、模型、视图等,可以帮助你更方便地构建复杂的 Web 应用程序。 ### 回答3: Laravel是一种流行的PHP框架,用于开发Web应用程序。它提供了许多功能和工具,使得开发任务更加简单和高效。 首先,我们需要安装Laravel。可以使用Composer在命令行中运行以下命令来创建一个新的Laravel项目: ```bash composer create-project laravel/laravel project-name ``` 安装完成后,我们可以在`routes/web.php`文件中定义我们的路由。路由决定了我们的应用程序如何响应特定的网址。例如,我们可以定义一个路由来处理主页: ```php Route::get('/', function () { return view('welcome'); }); ``` 在这个例子中,我们使用`get`方法定义了一个GET请求的路由,当用户访问主页时,会返回一个名为`welcome`的视图。 接下来,我们可以在`resources/views`文件夹中创建我们的视图文件。视图是我们应用程序的用户界面,用于展示数据和与用户交互。我们可以在视图文件中使用HTML和Blade模板引擎来构建动态内容。例如,我们可以在`welcome.blade.php`文件中添加一个简单的欢迎信息: ```html <!DOCTYPE html> <html> <head> <title>Welcome</title> </head> <body> <h1>Welcome to my website!</h1> </body> </html> ``` 现在,当用户访问主页时,我们的应用程序将显示这个视图。 除了路由和视图,Laravel还提供了许多其他功能,如数据库访问、验证、授权等。我们可以在`app`文件夹中的各种目录和文件中定义和使用这些功能。 总的来说,Laravel是一个功能强大的PHP框架,提供了一套简单而优雅的API来构建Web应用程序。使用Laravel,我们可以更轻松地编写和维护高质量的代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你华还是你华

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值