Route::get('hello/{id?}/{pass?}', 'HelloController@index');

こう送られてくる想定のパラメータに対しRequestでValidateをかけるには、 Requestのall()メソッドでパラメータを追加する。

HelloRequestを作成

$ php artisan make:request HelloRequest

HelloRequestを編集

<?php
namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Facades\Input;

class HelloRequest extends FormRequest {
    public function authorize() {
        return true;
    }

    public function rules() {
        return [
            'id' => 'required|string',
            'pass' => 'required|string',
        ];
    }

    public function all()
    {
        $request = Input::all();
        $request['id'] = $this->route('id');
        $request['pass'] = $this->route('pass');
        return $request;
    }
}

all()メソッドで、idとpassをvalidateの対象にしている。

あとは普通にControllerでHelloRequestを指定する。

use App\Http\Requests\HelloRequest;

class HelloController extends Controller {
    // HelloRequestを引数にする。
    public function index(HelloRequest $request) {
        ...

        ...
    }
}

参考

こちらのサイトを参考にさせていただきました、ありがとうございます。