1

This is very strange. I have an endpoint that accepts a PUT request.

namespace App\Http\Requests;
use Dingo\Api\Http\FormRequest;
class UpdateTestRequest extends FormRequest
{
    
    public function authorize()
    {
        return true // guaranteed to work
    }

    public function rules()
    {
        return [
          'is_invited' => 'required|boolean',
          'is_span_invited' => 'required|boolean',
        ];
    }
}

When I make the request in insomnia, it works fine when accepting a JSON payload.enter image description here

However, changing to type Multipart form data and PUT'ing again - the UpdateTestRequest is run again but it fails. Laravel doesn't seem to see the values in is_invited nor is_span_invited. Doesn't matter is the expected value is a string, int etc.

Very strange.

enter image description here

1

2 Answers 2

0

I think true is being parsed as string by laravel backend. Did you try sending 0 and 1 instead?

Sign up to request clarification or add additional context in comments.

Comments

0

Use _method="PUT" in request body and POST. https://laravel.com/docs/9.x/routing#form-method-spoofing

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.