[英]why is my api request going to web route instead of api route? Laravel 5.5.33
Am trying to set up a SPA with Vuejs and Laravel at the backend Which made to configure the web route to accept all path and return the home page but 我试图在后端使用Vuejs和Laravel设置SPA,从而将网络路由配置为接受所有路径并返回主页,但是
all my ajax request with axios 我用axios提出的所有ajax请求
signin(context, data) {
axios.post(`${this.base_url}/api/signin`,data)
.then(response => {
context.error = false
localStorage.setItem('id_token', response.data.meta.token)
this.user.authenticated = true
this.user.profile = response.data.data
router.push({
path: '/'
})
}).catch(errors => {
console.dir(errors.response.data)
context.errors = errors.data
context.error = true
})
},
are going to laravel web route 要去laravel网络路线
<?php Route::any('{all}', function () {return view('index'); })->where(['all' => '.*']);
instead of api route 代替api路由
Route::group(['middleware' => ['api']], function () {
Route::post('/api/register', [
'uses' => 'Auth\AuthController@register',
]);
Route::post('/api/signin', [
'uses' => 'Auth\AuthController@signin',
]);
Route::group(['middleware' => 'jwt'], function () {
Route::get('/user', [
'uses' => 'UserController@index',
]);
});
}); });
Please can anyone explain to me why this happening? 请谁能向我解释为什么会这样?
Please remove api routes from routes/web.php file and place it in routes/api.php file 请从route / web.php文件中删除api路由,并将其放置在routes / api.php文件中
Route::post('/api/register', [
'uses' => 'Auth\AuthController@register',
]);
Route::post('/api/signin', [
'uses' => 'Auth\AuthController@signin',
]);
Route::group(['middleware' => 'jwt'], function () {
Route::get('/user', [
'uses' => 'UserController@index',
]);
});
Your web.php should only contain 您的web.php应该只包含
Route::any('{all}', function () {return view('index'); })->where(['all' => '.*']);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.