使laravel忽略AngularJS的路由参数以获取它们

时间:2017-01-15 12:17:36

标签: php angularjs laravel

我正在开发一个AngularJS(版本1.6)应用程序。该应用程序的后端是在Laravel(版本5.3)中制作的。

应用程序的路由由AngularJS完成。为了能够使用我们的Angular' html5Mode,我创建了一个捕获路径,返回我的索引视图:

Route::get('{all}', function () {
    return view('index');
});

从此开始,Angular会处理所有路由。但是,我现在面临的问题是我无法使用路由参数。例如,如果我转到网址:http://example.com/profile/username Laravels路由会再次占上风并向我显示NotFoundHttpException

我是否有可能做这样的事情:

Route::get('{all}/{all}', function () {
    return view('index');
});

或者是否有可能完全禁用Laravel的路由,并附带/api/路由的执行?

感谢。

1 个答案:

答案 0 :(得分:1)

尝试

Route::get('/{any?}', function (){
    return view('index');
})->where('any', '[\/\w\.-]*');

这应该使用url param

路由到angular