Laravel 请求验证不适用于邮递员请求
Posted
技术标签:
【中文标题】Laravel 请求验证不适用于邮递员请求【英文标题】:Laravel request validation not working for postman request 【发布时间】:2021-04-13 07:18:22 【问题描述】:对于下面的请求,当 body 参数以 JSON 格式发送时,它总是验证请求(因为没有触发验证规则),但是当以 form-data 或 form-urlencoded 发送时,它会通过验证规则。这是 Laravel 的限制吗?
namespace App\Api\Requests\OrganizationUser;
use App\Api\Constants\PlatformRoles;
use Framework\Http\Requests\APIFormRequest;
class CreateNewUserRequest extends APIFormRequest
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
return true;
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
return [
'name' => 'bail|required|string|max:255',
'access' => 'present|array',
'access.*.access_type' => ['bail', 'sometimes', 'string'],
'access.*.id' => ['bail', 'sometimes', 'string']
];
【问题讨论】:
【参考方案1】:当您将其作为表单数据发送时,主体结构已更改尝试 dd 您的请求并查看请求的外观。
public function rules()
dd($this->request->all());
【讨论】:
以上是关于Laravel 请求验证不适用于邮递员请求的主要内容,如果未能解决你的问题,请参考以下文章
Laravel表单请求验证不适用于getValidatorInstance()
使用邮递员的 GET 请求有效,但不适用于 python (HTTPSConnectionPool)