CakePHPでWebサービスを作る際に、ログインしないと表示できない管理者ページと、未ログインで表示できる一般ユーザページを分ける必要がありました。
しかし、基本的には未ログインの状態ではログインページに遷移してしまいます。
特定のページを、未ログインで表示する方法をメモ。
未ログインで表示するページの実装方法
以下、コード例。
// src/Controller/SamplesController.php
class SamplesController extends AppController
{
public function beforeFilter(\Cake\Event\EventInterface $event)
{
parent::beforeFilter($event);
//view()で表示するページを未ログインで表示可能にする
$this->Authentication->allowUnauthenticated(['view']);
}
public function view()
{
//処理を記載
}
}
この記載によって、下記のurlが未ログインでも表示可能になります。
URL:https://ドメイン名/samples/view
未ログインでログイン可能なページの指定(10行目)については、配列を利用しているので、複数のページを指定することも可能です。
コメント