【发布时间】:2014-05-04 04:36:44
【问题描述】:
我正在使用 Laravel 构建一个 RESTful api。我对如何进行路由感到困惑。
我有以下 api 控制器
class APIController extends BaseController{
public function sendMsg($authid, $roomid, $msg){
}
public function getMsg($roomid, $timestamp){
}
}
我希望它可以访问的 URL 格式如下所示:
http://example.com/api/{functionName}/{parameter1}/{parameter2}/.../
在这里,在第一个参数中,我将拥有应该映射到控制器类中的函数的函数名称,然后是控制器所需的参数。
例如
要访问sendMsg()函数,url应该是这样的:http://example.com/api/sendMsg/sdf879s8/2/hi+there+whats+up
要访问getMsg() 函数,网址应如下所示
http://example.com/api/getMsg/2/1395796678
那么......我怎样才能编写我的路线,以便它可以处理动态数量和不同的参数需要?
我可以像这样为每个函数名写一个路由:
Route::get('/api/sendmsg/{authid}/{msg}', function($authid, $msg){
//call function...
});
其他功能也一样。如果没问题,但是有没有办法将所有功能与 APIController 合并到一个路由中?
【问题讨论】: