読み書きプログラミング

日常のプログラミングで気づいたことを綴っています

複数のアプリで1つのアカウントデータベースを使う

Meteorは基本シングルページウェブアプリです。
なので、デスクトップ用ページとモバイル用ページを作りたい場合、レスポンシブデザインということになりますが、レスポンシブデザインには限界がありネイティブアプリのようなUIは実現できません。

なので、デスクトップ用アプリとモバイル用アプリを分けて作ることになります。
2つのアプリでデータベースを共有するには、一方をメインとしてサブからDDPを使ってメインのデータベースにアクセスすることができます。

ではアカウント関連のデータベースはどうするか。
非公式の機能を使うと、一行でサブからメインのデータベースを使うようにできます。

サブのサーバーサイドコードに、

__meteor_runtime_config__.ACCOUNTS_CONNECTION_URL = '<メインのURL>';

の一行を入れるだけでOK。ただ、OAuthを使っている場合、コールバックURLの兼用が難しいなど問題があり、この方法の利用は限定されます。

公式にサポートしてもらいたいですね。