话题的资源路由为什么不需要create和edit?
在web路由页面需要create和edit
Route::resource('topics', 'TopicController', [
'only' => [
'index', 'show', 'create', 'store', 'update', 'edit', 'destroy'
]
]);
为什么api路由页面不需要这两个东西了?手机端点击“新建话题”按钮后,不需要访问 route(‘topics.create’) 指向的url吗?
// 游客可以访问话题列表、详情
Route::resource('topics', 'TopicsController')->only([
'index', 'show'
]);
// 需要登录后才可以访问的接口
Route::middleware('auth:api')->group(function() {
// 以下不含 create、edit
Route::resource('topics', 'TopicsController')->only([
'store', 'update', 'destroy'
]);
});
关于 LearnKu
web路由里边这样写是因为前后端是一体的,也就是说在web端访问create和edit页面的时候是通过路由器导向到控制器里边的create和edit方法来确定要展示哪些页面的,因此路由里边需要这两个方法。 而API都是前后端分离形式的,前端页面的跳转是通过前端的路由做控制的。至于这两个页面的访问权限则可以通过类似于JWT的一些方式去做限制。关于前后端分离里边的前端框架可以了解一下vue,关于前后端分离的身份认证识别可以了解下JWT。