代码之家  ›  专栏  ›  技术社区  ›  Shahid Karimi

Laravel 5.5验证API端点参数的最佳方法

  •  1
  • Shahid Karimi  · 技术社区  · 7 年前

    路线

    Route::get('attendence/{year?}/{name?}/{category?}, 'EmployeesController@users');
    

    控制器动作

    function users($year=null, $name=null, $category= null){
    }
    

    我的要求不是抛出异常,而是为以下所有URL向用户显示有意义的消息。

    http://localhost:8080/2012/john/travel 
    http://localhost:8080/undefined/john/travel 
    http://localhost:8080/undefined/john
    http://localhost:8080/john
    

    换句话说,应验证变量年份的数值、名称和字母类别。

    不适用: 我用的是Laravel Lumen

    感谢您的任何帮助

    1 回复  |  直到 7 年前
        1
  •  0
  •   lchachurski    7 年前
    1. 验证- https://lumen.laravel.com/docs/5.5/validation

    2. 正则表达式约束+自定义异常处理程序- https://lumen.laravel.com/docs/5.5/routing#parameters-regular-expression-constraints https://lumen.laravel.com/docs/5.2/errors#the-exception-handler

    我想第一个很清楚。第二,您可以捕捉路由异常,并用有意义的消息呈现视图。