如何在Slim框架中保护REST API

时间:2015-03-04 02:27:51

标签: api rest mobile slim

我在Slim框架中编写了一个REST API。目前API是开放模式。 如何将安全性添加到API。通过添加API KEY或用户名或密码。

此API也将用于移动应用程序。我们该如何保护?

1 个答案:

答案 0 :(得分:2)

您可以创建route middleware以确保请求具有API密钥(或其他)。

示例:

<?php
$checkApiKey = function () {
    return function () use () {
        $app = \Slim\Slim::getInstance();
        $apiKey = $app->request->post('apiKey');

        if ( Api::check($apiKey) ) { //your magic check on api key

            $app->flash('error', 'API Key not available');
            $app->redirect('/api/error');
        }
    };
};

$app = new \Slim\Slim();
$app->group('/api', $checkApiKey(), function ($app) {
    //your amazing api routes...
});