https://github.com/cloverstudio/Spika-Server
AndroidもiOSも、エミュレータ上ではアプリが起動するところまで出来たので、ログインしようとするも認証が失敗してしまう。
仕方ないので、サーバー側のソースコードを読んでみる。
CouchDB を使うのは今回が初めて。 標準(?)のGUIツールはここにある。
※Vagrantfile にポート転送の設定が書いてあるので localhost で指定する
関係ファイル
init.php
- CouchDB 接続先設定
src/Spika/Controller/
以下のコントローラーファイル郡- 各url に対する挙動が設定されている
InstallerController.php
- wwwroot/install にアクセスした時の処理、初期ユーザーを1人作成される
UserController.php
ユーザー関連のコントローラーで、ログイン認証もここ- wwwroot/install にアクセスした時の処理
src/Spika/Db/CouchDb.php
- コントローラーから呼んでいる CouchDBの処理が書かてれいる
logs/debug.log
- ログファイル
処理
PHP の Silex というフレームワークが使われている。
symfony2 のコンポーネントが多数使われている。
UserController::setupAuthMethod()
認証処理のendpoint
$authResult = $app['spikadb']->doSpikaAuth($email,$password);
// -> CouchDb::doSpikaAuth($email,$password) が呼ばれる