在我的一个laravel网站中,当我尝试集成angularjs4时,一切正常。但是我面临着与web
中定义的api路由和路由的冲突问题我web.php
中的代码如下
Route::get('/{path?}', function () {
return view('site');
})->where('path', '.*')
->name('siteapp');
由于上面的代码将所有内容路由到视图" site",我无法在api.php中添加api请求路由,示例如下所示
链接www.mysite.com/api/user路由到" web.php"应该来自api.php
在api.php
Route::get('user', function (Request $request) {
return ['name' => 'demo'];
})->middleware('jwt.auth');
是否有任何正则表达式可以跳过以www.mysite.com/api/something
即。来自web.php
。跳过路径有什么规则吗?从这一行的api开始"其中('路径','。*')"?
作为简要说明,可以在规则中跳过api开头的路径('路径',' [api]![---允许所有其他字符串 - ]&#39 ;)
请adivice
答案 0 :(得分:1)
您可以像这样使用regEx:
Route::get('/{path?}', function () {
return view('site');
})->where('path', '^(?!api).*$')
->name('siteapp');