【问题标题】:Route not exit but still getting access?路由不退出但仍然可以访问?
【发布时间】:2018-07-07 08:04:59
【问题描述】:

我在 routes.php/homehome /em> 但我仍然可以访问此路由。 在登录过程中有时会出现问题。有时,当我尝试登录时,在成功通过身份验证后,我会重定向此路由,但为什么因为该路由在 routes.php 中不存在。它也可以通过 localhost:8000/home 访问。我的 routes.php 如下。任何帮助将不胜感激。谢谢

   <?php

/*
  |--------------------------------------------------------------------------
  | Application Routes
  |--------------------------------------------------------------------------
  |
  | Here is where you can register all of the routes for an application.
  | It's a breeze. Simply tell Laravel the URIs it should respond to
  | and give it the controller to call when that URI is requested.
  |
 */

use Entities\Driver;
Route::get('/', 'HomeController@index');
Route::resource('/contact', 'HomeController@contact');

Route::post('mileage', ['as' => 'mileage', 'uses' => 'TripController@getMilesBetween']);

//Route::post('mileage', 'TripController@getMilesBetween');
Route::get('mileage', 'TripController@getMilesNotFound');

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.trip'], function () {
    Route::resource('trip', 'TripController');
}
);

Route::get('load-list', 'LoadController@showloadlist');
Route::get('load/{id}/clone', 'LoadController@cloneLoad');
Route::get('load/{id}/clone', 'LoadController@cloneLoad');
Route::get('load/{id}/attachcon', ['as' => 'load.attachcon', 'middleware' => ['auth'], 'can' => 'view.load', 'uses' => 'LoadController@attachRateCon']);
Route::get('load/{id}/attachbol', ['as' => 'load.attachbol', 'middleware' => ['auth'], 'can' => 'view.load', 'uses' => 'LoadController@attachBol']);
Route::get('load/{id}/attachments', ['as' => 'load.attachment', 'middleware' => ['auth'], 'can' => 'view.load', 'uses' => 'LoadController@attachmentList']);

Route::get('expense/{id}/attachreceipt', ['as' => 'expense.attachreceipt', 'middleware' => ['auth'], 'can' => 'view.expense', 'uses' => 'ExpenseController@attachReceipt']);
Route::get('expense/{id}/attachments', ['as' => 'expense.attachment', 'middleware' => ['auth'], 'can' => 'view.expense', 'uses' => 'ExpenseController@attachmentList']);

Route::get('maintenance/{id}/attachreceipt', ['as' => 'maintenance.attachreceipt', 'middleware' => ['auth'], 'can' => 'view.maintenance', 'uses' => 'MaintenanceController@attachReceipt']);
Route::get('maintenance/{id}/attachments', ['as' => 'maintenance.attachment', 'middleware' => ['auth'], 'can' => 'view.maintenance', 'uses' => 'MaintenanceController@attachmentList']);

Route::post('load/store-clone', ['as' => 'load.clone', 'uses' => 'LoadController@cloneStore']);


/*Invoice Routes Start*/

Route::group(['prefix'=>'invoices/'],function(){
Route::get('to_invoice','InvoiceController@LoadToInvoice');
Route::get('create/{customer_id}','InvoiceController@create');
Route::post('/store','InvoiceController@store')->name('invoice.store');
Route::get('/show','InvoiceController@show')->name('invoice.show');
Route::get('/add_payment/{id}','InvoiceController@payments');
Route::post('/store_payment','InvoiceController@store_payment')->name('invoice.payment_store');
Route::get('/pdf/{id}/{type}','InvoiceController@genratePdf')->name('pdf.invoice');
});


/*Invoice Routes end*/

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.load'], function () {
    Route::resource('load', 'LoadController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.driver'], function () {
    Route::resource('driver', 'DriverController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.contract'], function () {
    Route::resource('contract', 'ContractController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.settlement'], function () {
    Route::resource('settlement', 'SettlementController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.reexpenses'], function () {
    Route::resource('reexpenses', 'RecurringExpensesController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.mplan'], function () {
    Route::resource('mplan', 'MaintenancePlanController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.maintenance'], function () {
    Route::resource('maintenance', 'MaintenanceLogController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.invoice'], function () {
    Route::resource('invoice', 'InvoiceController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.expense'], function () {
    Route::resource('expense', 'ExpenseController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.maintenance'], function () {
    Route::resource('maintenance', 'MaintenanceController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.entry'], function () {
    Route::resource('entry', 'EntryController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.contact'], function () {
    Route::resource('contact', 'ContactController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.type'], function () {
    Route::resource('type', 'TypeController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.model'], function () {
    Route::resource('model', 'ModelController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.company'], function () {
    Route::resource('company', 'CompanyController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.vehicle'], function () {
    Route::resource('vehicle', 'VehicleController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.attachment'], function () {
    Route::resource('attachment', 'AttachmentController');
}
);

Route::group(
        [
    'middleware' => ['auth',
        'acl'],
    'can' => 'view.user'], function () {
    Route::resource('user', 'UserController');
}
);

Route::get('filesafe', 'AttachmentController@filesafe');
Route::get('plan-edit', 'AttachmentController@editPlan');
Route::get('attachment/download/{id}', 'AttachmentController@download');
Route::get('attachment/destroy/{id}', 'AttachmentController@destroy');

Route::get('expense/{id}/clone', 'ExpenseController@cloneExpense');
Route::post('expense/store-clone', ['as' => 'expense.clone', 'uses' => 'ExpenseController@cloneStore']);
Route::get('expense_category', 'ExpenseController@expenseCatList');
Route::get('expense_category/{id}', 'ExpenseController@expenseCatView');
Route::get('expense_category/destroy/{id}', 'ExpenseController@expenseCatDestroy');
Route::get('expense_category/{id}/edit', 'ExpenseController@expenseCatEdit');
Route::post('expense_category/update', ['as' => 'expense.catupdate', 'uses' => 'ExpenseController@expenseCatUpdate']);

Route::post('contact/mstore', 'ContactController@mstore');
Route::post('contact/mget', 'ContactController@jsonGetContact');

Route::post('type/mstore', 'TypeController@mstore');

Route::get('vehicle/{id}/{dateini}/{dateend}', 'VehicleController@show');

Route::get('trip/destroy/{id}', 'TripController@destroy');
Route::get('load/destroy/{id}', 'LoadController@destroy');
Route::get('part/destroy/{id}', 'PartController@destroy');
Route::get('entry/destroy/{id}', 'EntryController@destroy');
Route::get('contact/destroy/{id}', 'ContactController@destroy');
Route::get('type/destroy/{id}', 'TypeController@destroy');
Route::get('model/destroy/{id}', 'ModelController@destroy');
Route::get('vehicle/destroy/{id}', 'VehicleController@destroy');
Route::get('user/destroy/{id}', 'UserController@destroy');
Route::get('contract/destroy/{id}', 'ContractController@destroy');

Route::get('getModels/{entityKey}/{idType?}', 'ModelController@getModelsByType');
Route::get('getPartsByVehicle/{idVehicle}', 'PartController@getPartsByVehicle');

Route::get('sensor/download/{idPart}', 'TireController@downloadData');

Route::get('profile', 'UserController@showProfile');
Route::put('updateProfile/{id}', 'UserController@updateProfile');

Route::get('invite', 'InviteController@showInvite');
Route::put('invite', 'InviteController@storeInvite');
Route::get('create-account/{token}', 'Auth\AuthController@showCreateAccount');
Route::put('create-account/{token}', 'Auth\AuthController@createAccount');

Route::get('auth/social/{provider}/{token?}', 'SocialLoginController@redirectToProvider');
Route::get('auth/{provider}/callback', 'SocialLoginController@handleProviderCallback');
Route::get('auth/{provider}/callback', 'SocialLoginController@handleProviderCallback');
Route::get('auth/logout', 'SocialLoginController@getLogout');

Route::post('tires/position/swap', 'TireController@positionSwap');
Route::post('tires/position/remove', 'TireController@positionRemove');
Route::post('tires/position/add', 'TireController@positionAdd');
Route::post('tires/details', 'TireController@details');
Route::get('tires/updateStorage/{vehicle_id}', 'TireController@updateStorage');
Route::post('parts/create', 'PartController@store');
Route::post('models/create', 'ModelController@storeByDialog');
Route::post('types/create', 'TypeController@storeByDialog');
Route::post('vehicle/map/updateDetail', 'VehicleController@updateMapDetail');

Route::post('vehicle/dashboard/tires', 'VehicleDashboardController@tires');
Route::post('vehicle/dashboard/localization', 'VehicleDashboardController@localization');

Route::get('vehicle/fleet/dashboard', 'VehicleDashboardController@fleet');
Route::get('vehicle/fleet/dashboard/{updateDatetime}', 'VehicleDashboardController@fleetGpsAndSensorData');
Route::get('vehicle/fleet/dashboard/{updateDatetime}/{vehicleId}', 'VehicleDashboardController@fleetGpsAndSensorData');

Route::bind(
        'users', function ($value, $route) {
    return App\Entities\User::whereId($value)->first();
}
);

Route::controllers(
        [
            'auth' => 'Auth\AuthController',
        ]
);

/* Start Route to Delete*/

Route::get('delete',function(){
$model=Request::get('model');
$condition=Request::get('condition');
$qry=$model::find($condition)->delete();
$ret=1;
$ret2=0;
if($qry){
return $ret;
}
return $ret2;
});

/*End Route to delete*/

//Generate pdf

Route::get('/createAJAX',function(){
$model = Request::get('model');
$data=Input::all();
//unset($data['model']);
$create=$model::create($data)->id;
return $create;
});

【问题讨论】:

  • 使用php artisan cache:clearphp artisan route:cache
  • 好的,我会尝试然后返回
  • 仍在访问 /home 路由。没有效果
  • 使用php artisan route:list查看所有可用路线
  • 感谢我得到了这条路线。

标签: laravel laravel-5 routes


【解决方案1】:

如果你使用的是 Laravel 的认证,那么它会在用户登录成功后将用户重定向到/home

当用户成功通过身份验证后,他们将被重定向到 /home URI。您可以自定义身份验证后重定向 通过在 LoginController 上定义 redirectTo 属性来定位, RegisterController 和 ResetPasswordController:

protected $redirectTo = '/';

如果重定向路径需要自定义生成逻辑,您可以定义一个 redirectTo 方法而不是 redirectTo 属性:

 protected function redirectTo()
 {
     return '/path';
 }

docs

您可以通过更新上述控制器中的$redirectTo prop 或redirectTo() 方法来更改路由。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-01
    • 2018-05-16
    • 1970-01-01
    • 2013-07-11
    • 2011-05-23
    • 1970-01-01
    • 2020-12-28
    • 2016-10-27
    相关资源
    最近更新 更多