【问题标题】:laravel return json with error instead of redirection after validation FormRequestlaravel 在验证 FormRequest 后返回 json 错误而不是重定向
【发布时间】:2020-07-26 10:46:52
【问题描述】:

我有一个带方法的控制器

public function foo(FooRequest $request)
    {
        return "OK"
    }

FooRequest 扩展 FormRequest 并具有

public function rules()
    {
        return [
            'id' => ['required', 'numeric', 'exists:partners,id'],
            'manager_id' => ['nullable', 'numeric'],
        ];
    }

如果我输入无效的 id,它会将我重定向到 /。如何禁用此重定向并显示 json 异常?

json 异常已经实现(类似于 JException(code, exception, errors),我只需要了解如何摆脱重定向并调用此 JException

【问题讨论】:

    标签: php laravel validation request response


    【解决方案1】:

    我已经放了Accept: aplication/json 标头,它工作正常

    【讨论】:

      【解决方案2】:

      您需要 json 响应而不是重定向的最常见情况是在 API 使用中。因此,您需要在通话中添加以下标题

      Content-Type: application/json
      

      否则,请查看此示例以了解如何验证请求并处理验证失败。
      https://laravel.com/docs/6.x/validation#manually-creating-validators

      【讨论】:

      • 非常接近。我放了 Accept: aplication/json 标头,它工作正常
      猜你喜欢
      • 2023-01-21
      • 2017-10-13
      • 2017-06-30
      • 2015-08-16
      • 2018-03-15
      • 1970-01-01
      • 2015-08-13
      • 1970-01-01
      • 2016-04-09
      相关资源
      最近更新 更多