Vue js laravel 8 routing

I am still confused when i try to add a route path in vue router such as :

        path: '/admin/blog/archived_blogs',
        name: 'ArchivedBlogs',
        meta: { title: 'Archived Blog' },
        component: ArchivedBlog

everything works fine apart from deleting where i get error
405(Method not allowed)

The POST method is not supported for this route. Supported methods:

all i can do is change the path to

   path: '/admin_blog_archived_blogs',
   name: 'ArchivedBlogs',
   meta: { title: 'Archived Blog' },
   component: ArchivedBlog

the current web route i use is

Route::get('/{slug?}', [HomeController::class, 'index'])->where('slug', '[/w.-]*')->name('home');

Any advice ?


Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

you need to use any() to catch all the methods as well


Route::any('/{slug?}', [HomeController::class, 'index'])->where('slug', '[/w.-]*')->name('home');

for SPA i use

Route::any('{all}', [HomeController::class, 'index'])
    ->where('all', '^(?!api).*$')
    ->where('all', '^(?!storage).*$');

like this so all the web related route handle Vuejs and storage or api route handel by laravel

All methods was sourced from or, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Notify of

Inline Feedbacks
View all comments
Would love your thoughts, please comment.x