Url 主干网和Laravel:阻止访问Laravel控制器方法

Url 主干网和Laravel:阻止访问Laravel控制器方法,url,backbone.js,controller,laravel,Url,Backbone.js,Controller,Laravel,首先,很抱歉我的英语语言能力不好 我正在使用Laravel和Backbone.js作为小型web应用程序。在我的主干集合中,我正在定义urlRoot:“test/cont1”。我如何“允许”主干网异步转到该URL,但通过在web浏览器中键入它来阻止用户手动转到同一URL(然后用户将得到一些我不想让他看到的json响应)。不知道这是否是您想要的,但您可以添加一个过滤器,只需执行if(!Request::ajax())App::abort() 编辑:一个更好的例子 Route::filter('ap

首先,很抱歉我的英语语言能力不好


我正在使用Laravel和Backbone.js作为小型web应用程序。在我的主干集合中,我正在定义urlRoot:“test/cont1”。我如何“允许”主干网异步转到该URL,但通过在web浏览器中键入它来阻止用户手动转到同一URL(然后用户将得到一些我不想让他看到的json响应)。

不知道这是否是您想要的,但您可以添加一个过滤器,只需执行
if(!Request::ajax())App::abort()

编辑:一个更好的例子

Route::filter('api', function($route, $request)
{
    if ( ! $request->ajax()) App::abort(404);
});

然后在控制器中添加api过滤器。

感谢您的响应!很好的一点,trows方法不允许用户出现HttpException异常。比有价值的json数据更好(它没有那么有价值:))这不是它应该抛出的异常:/将其更改为App::abort(404);看看你有没有合适的404。我会更新答案。