【问题标题】:How to return back if request is get instead of post?如果请求是获取而不是发布,如何返回?
【发布时间】:2020-07-18 01:07:48
【问题描述】:

我有一个提交表单的路线。此路线为 Post 类型。当我直接将该网址放在浏览器的地址栏中时,它会给我这个错误。

此路由不支持 GET 方法。支持的方法:POST。

我想要的是,它应该返回而不是给出错误。

路线:

Route::post('/warehouse-locations-import', 'WarehouseLocationController@warehouseLocationsImport')
        ->name('warehouselocations.import');

控制器:

//this function will extract all locations data from file
public function extractWarehouseLocations($locations)
{
    if ($locations['E'] && $locations['L'] && $locations['B'] && $locations['K']) {
        //making array of location data
        $locationArray = array(
            'name' => $locations['B'],
            'barcode' => $locations['C'],
            'group' => $locations['D'],
            'capacity' => $locations['E'],
            'row' => $locations['F'],
            'bay' => $locations['G'],
            'level' => $locations['H'],
            'depth' => $locations['I'],
            'product_type' => $locations['J'],
            'pick_efficiency' => $locations['K']
        );

        //adding index in array according to if condition
        $locations['L'] ? $locationArray['status'] = 1 : $locationArray['status'] = 0;
    }
}

【问题讨论】:

  • 为同一条路由添加一个GET 方法。
  • 你的意思是说同一路线的get和post方法?
  • 为什么不定义方法?
  • 是....为其他目的使用不同的控制器方法获取方法(返回表单、一些消息等)。

标签: laravel laravel-5 post get routes


【解决方案1】:

有时您可能需要注册一个响应多个 HTTP 动词的路由。您可以使用 match 方法。

Route::match(['get', 'post'], '/', function () {
   //
});

或者,您甚至可以使用 any 方法注册一个响应所有 HTTP 动词的路由:

Route::any('/', function () {
   //
});

【讨论】:

    【解决方案2】:

    您可以使用 get 方法和使用 post 方法显示您的发送尝试,

    Route::post('/warehouse-locations-import','WarehouseLocationController@warehouseLocationsImport')
                ->name('warehouselocations.import');
    Route::get('/warehouse-locations-import', 'WarehouseLocationController@warehouseLocationsImportForm')
                ->name('warehouselocations.importform');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-11
      • 1970-01-01
      • 2014-02-10
      • 1970-01-01
      • 1970-01-01
      • 2012-07-18
      • 1970-01-01
      • 2018-04-21
      相关资源
      最近更新 更多