JavaScript SDK
キッチンシンクというのは、何かのフレームワークやライブラリがあった時に、その殆どの機能を体験できる仕組みになります。それがあることでフレームワークの全体像が分かったり、何か開発していて困った時に参考とできるコードになります。 元々MonacaとNC…
ロールに所属している会員を取得する際の上限数について · Issue #774 · NIFTYCloud-mbaas/UserCommunityより。 あるロールに所属するユーザを取得する場合には ncmb.Role.fetchAll() を使います。 // 通常のやり方 ncmb.Role.equalTo("roleName","Pro").fet…
権限管理を行うことでユーザやグループ単位にアクセスできるオブジェクトを制御できます。アプリケーションキーとクライアントキーという二つの情報でアクセス制御を行っているmBaaSにとって、認証ごとのアクセス制御はセキュリティの肝になるでしょう。 そ…
WebブラウザとNode.jsのAPIは多少異なります。JavaScript SDKを使えばほぼどちらも相違なく使えるのですが、ファイルストアへのアップロードは異なりますので注意してください。 今回はテキストデータのアップロード方法について紹介します。 Node.jsの場合 …
JavaScript SDKはMonacaアプリやコンソールからNCMBを使うのに便利なライブラリですが、機能はごく基本的なものに限っており物足りなさを感じることがあります。 そこで非公式に作っているのがNCMB Extendです。データストアを拡張して便利なメソッドを追加…
通常のRDBMSの場合、1対多のデータ構造を考えるとテーブルを二つ用意するのが一般的でしょう。しかしスキーマレスのデータベースの場合、そのような正規化よりもデータの扱いやすさを優先することが多くなります。 NCMBにおいてもそれは同様で、データストア…
※ 非公式ライブラリなのでご注意ください データストアに不足している機能を追加するNCMB ExtendにSUM関数を実装しました。集計したいフィールドをsumメソッドの中で指定するだけです。 使い方 require('ncmb-extend'); let NCMB = require('ncmb'); let ncm…
mBaaSではJavaScript SDKを公開しています。これを使えばWeb APIの設計や認証周りなどを気にすることなくmBaaSのデータを自由に扱えるようになります。 しかしJavaScript SDKだけでは物足りないと感じたり、結果的にクライアント側でのコード量が増えてしま…
プッシュ通知は従来のマーケティング手法で言えばメールマーケティングに相当します。つまり一度配信してしまうと、後から取り消すのが難しい拡散方法ということです。そのため企業によっては一旦承認フローを経てからプッシュ通知を送りたいという要望も聞…
データクラスのエクスポートを自動化する方法を紹介しましたが、担当者が日々手動で実行すれば十分といった規模の場合もあるでしょう。そこでHTML5でデスクトップアプリケーションが作れるElectronを使ってエクスポート機能を持ったアプリを作成しました。
mBaaSには管理画面がありますが、それでも欲しいと言われるのが自社専用の管理画面です。入力項目や画面数を制限して担当者が使いやすいようなオリジナルの画面です。企業によっては承認フローが必要といった場合もあるでしょう。今回はJavaScript SDKとWeb…
Web技術でデスクトップアプリケーションが作れるElectronとJavaScript SDKを使い、社内などで使えるNCMBを運用するためのツールを作ります。前回はごく基本的な認証まで行いましたので、今回は権限管理の実装方法と利用法を紹介します。
数年前、Node.jsやExpressに注目が集まった際によく言われてたのがMEANスタックです。それまでのLAMPスタックに対抗するもので、M(MongoDB)E(Express)A(Angular)N(Node.js)でWebアプリケーションを構築します。 今回の新しいmBaaSの使い方として、mB…
JavaScript SDKを使ったmBaaSのコンソールベースの操作ツール、ncmb-cliでデータストアのCSVエクスポートに対応しました。機能としては先日紹介したデータストアをファイルストアにエクスポートするスクリプトを作成しましたをベースに、CLIで使えるようにし…
アクセスログなどを管理する場合、一日ごとのログファイルを分割したいと考えることは多いでしょう。同じファイルや同じテーブルにデータを蓄積していると、いつの間にか膨大になってしまいます。 mBaaSのデータストアを使った場合、そういった煩わしい処理…
前回の認証に続いて、今回はデータ編集機能を作っていきます。担当者のグループ(Manager)に読み書き権限を付与し、全体に対しては読み込み権限だけ付与します。そうすることで、ユーザからは誤ってデータ操作されないマスタができあがります。 今回はデー…
mBaaSでは開発者でなくとも使いやすい管理画面を提供していますが、すべての機能が使える分、どれを触れば良いのか分からないと感じてしまう担当者の方も多いようです。また、権限の設定などを間違えるとアプリで使えないデータになってしまう場合があります…
JavaScript SDKを使って認証処理を行う際には login/logout メソッドを使って行います。その際の注意点を幾つか紹介します。 ncmb.User.login と user.login の違い ncmb.User.login を使った認証処理は次のように書きます。 ncmb.User.login(userName, pass…
管理者や課金ユーザなどで、ロールを使っている方は多いかと思います。その際にはログインしているユーザがどのロールに所属しているかによってコンテンツの出し分けを行うでしょう。 現状のmBaaSではログインしているユーザがどのロールに所属しているか一…
JavaScript SDKにはmBaaSを汎用的に使うための機能は揃っていますが、アプリにはそれぞれ特有の機能が組み込まれるものです。そうしたロジックをすべて関数として提供するのも一つのやり方ですが、コードがスパゲティになりやすい傾向があります。 そこで今…
mBaaSをモバイルではなくバックエンドのデータベースとして活用する記事になります。前回で編集機能まで作りましたので、今回はファイルストアへのアップロード機能を作ります。実際にできあがると次のようになります。Qiitaやはてなブックマークのように画…
mBaaSをモバイルではなくバックエンドのデータベースとして活用する記事になります。前回で認証機能まで作りましたので、今回はそれを使って権限管理や編集機能を作ってみたいと思います。 今回実装するのは以下の通りです。 編集画面 更新機能 アクセス制限…
mBaaSをWebアプリケーションのバックエンドシステムとして使うデモです。前回はブログの基礎ができましたが、今回は認証機能を使って認証したユーザだけ記事を作成できるようにします。 セッション用ライブラリを追加 Expressでセッションを管理する場合は e…
スマートフォンアプリとして写真を扱いたいと思う人は多いかと思います。JavaScript SDK v2.1.1よりWebブラウザでもファイルストアへのアップロードが行えるようになり、Monacaアプリで写真のアップロード/ダウンロードができるようになりました。そこで今回…
JavaScript SDK v2.1.3がリリースされました。今回の大きな変更として、iOS 10上でMonacaを使っている際のシグネチャエラーになる不具合が修正されています。シグネチャ生成部分なので、多数のアプリで影響が出ているかと思います。アップデートをお願いしま…
mBaaSでは各種ソーシャルサービスを使った認証機能を提供しています。今回はその一つ、Twitter認証を使う方法を紹介します。TwitterではJavaScriptだけで認証を終えることができず、外部にサーバが必要になります。今回はOAuth.ioを使ってサーバレスのまま、…
mBaaSではアプリケーションキーとクライアントキーを組み合わせて使いますが、もしこの2つのキーが漏洩するとアプリを自由に(アクセス権限がないデータについては)操作できるようになります。コンパイル系のプログラミング言語では安全ですが、Webアプリケ…
Google認証についてJavaScript SDKで実装してみたいと思います。ニフティクラウド mobile backendでは会員管理機能を提供しています。一般的なユーザIDとパスワードの組み合わせの他、メールアドレスとパスワードであったり、Twitter/Facebook/Googleといっ…
ニフティクラウド mobile backendではMonacaと連携しており、Monacaアプリから専用プラグインを使って簡単にプッシュ通知受信のためのトークン設定を行ったり、プッシュ通知を受け取ることができます。 今回はMonacaもベースにしているCordovaアプリに対して…
今回はJavaScript SDK Version 2を利用する際に必要になるであろうTipsを幾つか紹介します。なおドキュメントはこちらに用意してありますので不明点があればぜひ参考にしてください。 今回は以下の5つです。 データストアの基本的な使い方 データストアに権…