使用 Slim PHP 的默认 GET 路由

Default GET route with Slim PHP

我最近使用 Slim PHP 框架构建了一个小型 API,它运行良好。但是,我想为根“/”设置一个 GET 路由,它以基本消息响应并有任何其他 GET 请求 return 和 "access denied"。

阅读文档和各种示例后,我无法弄清楚如何完成这些任务中的任何一个。我的项目仅依赖于 POST 路由,但能够响应针对根域和任何其他页面的 GET 请求就太棒了。

代码:

// SLIM INSTANCE
$app = new \Slim\Slim();
$app->contentType('application/json');

// SLIM ROUTES
$app->group('/core', function() use ($app)
{
    $app->post( '/create', 'Create' );
    $app->post( '/start', 'Start' );
    $app->post( '/stop', 'Stop' );
    $app->post( '/delete', 'Delete' );
});

如果你想响应不同的方法,只需使用map()-Method:

$app->map('/create', 'Create')->via('GET', 'POST');

要注册一个 'default route',如果没有路由匹配,它将始终回复 'access denied',您可以覆盖 'notFound'-Handler:

$app->notFound(function () use ($app) {
    $app->response->setStatus(403);
    //output 'access denied', redirect to login page or whatever you want to do.
});

要完成 'root' 路线:$app->get('/',function(){/*...*/}); 应该正是这样。