美文网首页
laravel开发中遇到的坑

laravel开发中遇到的坑

作者: gao922699 | 来源:发表于2022-08-09 00:02 被阅读0次
    • cros跨域的options类型请求需要在route中另外声明处理。
    • 数据验证:alpha_num规则官网文档说明是数字字母组合,结果中文也能通过验证。。。可以改为正则:
    regex:/^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]{6,18})$/
    
    • 数据验证:有些选填字段,后端本意应该是不传入,但是前端经常传入空字符串。这时候如果有验证规则会进行验证。需要在规则最前面加上nullable规则。相当于yii框架的skipOnEmpty选项。
    • 数据验证:验证数组中单个元素的格式:
    'class' => [
        'required', 'array'  //验证必须是数组形式
    ],
    'class.*' => [  //验证每个元素都要是整型
        'integer'
    ],
    
    • 路由文件中如果有闭包形式将无法缓存,应该全部使用指定控制器的方式。如果有group,则使用下面的写法可以避免闭包:
    //主routes/api.php文件中:
    Route::group(base_path('routes/api_v1.php')); 
    
    //routes/api_v1.php中书写路由:
    Route::get('/user/info', 'Api\v1\UserController@info');
    .....
    

    路由缓存命令:php artisan route:cache

    • 线上部署运行php artisan config:cache以后,将不会再读取.evn文件中的数据,所以代码中用到.evn的配置项应该写到config/app.php或者其他配置文件中读取,如:'API_VERSION' => env('API_VERSION', 'v1')

    相关文章

      网友评论

          本文标题:laravel开发中遇到的坑

          本文链接:https://www.haomeiwen.com/subject/innuirtx.html