読者です 読者をやめる 読者になる 読者になる

parse.comで会員制サイトを作ってみた時のメモ

作っていた時はもっと合った気がしたのですが…思い出したら追記していきます。

 

 

・現状、トランザクション処理が出来ない。

 

・まとめて処理出来る命令(Batch Operations)はあるが(そしてそれを使った場合のapiリクエストは1になる)、

50個程度のオブジェクトが限度の模様なため(https://parse.com/questions/rest-api-batch-operations)、

オブジェクトの持ち方にかなり気を付ける必要がある。

(※ただ、単純にオブジェクトの削除だけであれば、jsで動作させている限り、1000個くらい問題無く削除出来ていると思う)

 

・データ取得に1000件の制限がある。また、limit=1000と行った形でこれを指定しないと、取得のデフォルトは100件なので注意する。

 

・jsの場合、ACLをきちんと設定しないと、保存データが見えてしまうので(コードがユーザー側で実行される以上、追って行けてしまうので)、

自分からのみ、読み書きできるようにするなどの設定をするように。

(そしてそのACLは、rest Apiからは、master keyを使って無視して取得出来るので、管理側からそれが足かせになることは無い)

 

・jsだと、twitterログインが無いので注意。

(別にこれだけが理由では無いが、基本的に、jsで作るくらいだったら、全てrestで作った方が良いと思った…自分は表側をjs、管理側をrestと分けて作ってしまったが…)

 

facebookログインは、新規ユーザー作成時も、ログイン時も、命令が同じなので(その時新規ユーザーなのかどうかは取れる)、ログインページ/アカウント新規作成ページ、と分けても、どちらにも同じ機能(例えばログイン後にACLを設定するなど)を置かないといけない。

それがwebだけで済むのなら問題がないものの、iOSからも、facebookログインが出来るようになっていると少し面倒で、そちらも同様な命令を書いておかないといけない、という事になる。(ログインするユーザーのみ通して、新規ユーザーを作る人はwebからさせたいのでwebに飛ばす…という区分けが出来ないということに。ユーザー作成と、ログインの機能を分けておいてくれたらこんな事にはならないのだが…)

 

・parseのアプリ名が日本語だと、管理画面からのpush通知が飛ばない。(iOSアプリ同士では問題無く飛ぶ模様)

https://parse.com/questions/cant-receive-push-notification-from-dashboard

 

・パスワード変更しても、ログイン状態が残ることがあるので、面倒ではあるが、重要なデータをいじる際は、一度ログインのアクションを起こす(※パスワードを変えていれば、ここではちゃんとエラーを返してくれる)ようにする。