laravel中同一控制器内两个动作的post方法

laravel中同一控制器内两个动作的post方法,laravel,laravel-5.5,Laravel,Laravel 5.5,下面是我的路由文件,即web.php Route::post('finddomainname','DomainController@finddomainname')->name('finddomainname'); Route::post('registerdomains','DomainController@registerdomains')->name('registerdomains'); 以下是myDomainController上使用的两个操作的代码 public fu

下面是我的路由文件,即web.php

Route::post('finddomainname','DomainController@finddomainname')->name('finddomainname');

Route::post('registerdomains','DomainController@registerdomains')->name('registerdomains');
以下是myDomainController上使用的两个操作的代码

public function finddomainname(Request $request)
{
    $this->validate($request,
        ['searchdomaintxt'=>'required',
        'searchdomainext'=>'required']);

    $searchdomaintxt    =  $request->input('searchdomaintxt');
    $searchdomainext    =  $request->input('searchdomainext');
    $domainname="";
    if($searchdomaintxt && $searchdomainext)
    {   
        foreach($searchdomainext as $ext)
        {
            $domainname.=$searchdomaintxt.".".$ext.",";
        }

        //dd($domainnames);
        $domainnames= rtrim($domainname,',');

        $response=$this->soap->multidomainsearch($domainnames);
        $result=$response['RESPONSE']['DOMAINSEARCH'];
        //dd($result);
        if($result){
            //return redirect()->action('searchresults', array('response' => $result));
            return view('domain.searchresults',['response'=>$result]);
        }
        else
        {
            return view('domain.searchresults',['response'=>'']);
        }


    }
}
以下是提交数据后控制的第二个操作

public function registerdomains(registerDomainsValidation $request)
{       

    $domains=$request->input('selecteddomains');
    $selectedyear =$request->input('selectedyear');
    $domaincontactid=\Session::get('domaincontactid');
    $alldomains='';
    foreach($domains as $domain)
    {
        $alldomains.=$domain.",";
    }
    $alldomains=rtrim($alldomains,',');
    $response=$this->soap->registerdomains($alldomains,$domaincontactid,$selectedyear);
    return view('domain.searchresults',['response'=>$response]);
}
但是当我提交数据时,它会显示这个错误

    protected function methodNotAllowed(array $others)
{
    throw new MethodNotAllowedHttpException($others);
}

您正试图使用
GET
请求访问
POST
路由,这就是您收到
方法NotAllowedHttpException
的原因。要解决此问题,请确保您的
标记包含适当的
方法
属性

<form action="{{ YOUR_URL }}" method="POST">
    ...
</form>

POST REDIRECT GETyour是正确的,但如何避免此问题,如果我提交一个带有post请求的表格-1,并且表格-2是从表格-1提交的数据生成的,现在如果我发布表格-2数据,它将显示方法不允许异常……在laravel中有关于此问题的任何示例吗?因为您没有发布,所以重定向到GET RouteB,但我正在使用表格中的post方法,您能确认是哪一行导致了您吗问题是什么?我相信这是一行代码
$response=$this->soap->registerdomains($alldomains,$domaincontactid,$selectedyear)一点也不,控件执行此操作并正确运行此操作,但如果我进行验证,则会显示MethodNotAllowedHttpException错误基本上控制来自FindDomain操作和post请求,然后我再次使用post请求转到registerdomains操作…laravel存在一些post get问题,但我不知道如何解决此问题…我是laravel的新手
use GuzzleHttp\Client;

$client = new Client();
$response = $client->request('POST', 'YOUR_URL', [
    'form_params' => [
        'foo' => 'bar'
    ]
]);