예 Dispatch Filters
이 좋은 옵션입니다. 응용 프로그램이 브라우저 요청을 처리 할 예정이라면 컨트롤러가 더 좋을 것입니다.
이
1) 설정 \의 bootstrap.php
DispatcherFactory::add('ApiHeader');
2)의 src \ 라우팅 \ 필터 \의 ApiHeaderFilter.php
namespace App\Routing\Filter;
use Cake\Event\Event;
use Cake\Routing\DispatcherFilter;
class ApiHeaderFilter extends DispatcherFilter
{
public function beforeDispatch(Event $event)
{
$request = $event->data['request'];
$xAppKey = $request->header('X-App-Key');
if ($xAppKey != '123456789') {
// throw exception or message
exit;
}
}
}
또한 사용할 수 있습니다 파견 필터를 들어, 당신은 그것을 좋아 할 수
use Cake\ORM\TableRegistry;
...
$tableModel = TableRegistry::get('table_name');
$xAppKeys = $tableModel->find('all', ...
참조 링크 : 데이터베이스 쿼리에 대한 TableRegistery
Request Headers & Dispatch Filters