2. SDKセットアップ手順

ここでは、JavaScript SDK をアプリケーションに組み込む方法について説明します。

2.1. SDK 配布物の内容

SDK 配布物には、以下のようなファイルが格納されています。

js/
  baas.min.js               - JavaScriptライブラリ (圧縮、本番環境用)
  baas.min.map.js           - baas.min.js の mapファイル
  baas.js                   - JavaScriptライブラリ (非圧縮、開発用)
  baas.full.js              - JavaScriptライブラリ (非圧縮、開発用、コメント入り)
  baas.d.ts                 - TypeScript用型定義ファイル
  es6-promise.auto*.js      - ES6 Promise ライブラリ
node/
  nec-baas-jssdk-*.tgz      - Node.js 用モジュール (npmjs.com で公開しているものと同じ)

ブラウザ の場合は baas.js, baas.min.js のいずれかをアプリケーションに組み込んで下さい。 また、Promise に対応していないブラウザの場合は、es6-promise.auto.min.js もアプリケーションに組み込む必要があります。

Node.js の場合の組み込み手順は後述します。

注意

本番環境で利用する際は、原則 baas.min.js を使用するようにしてください。 baas.js はサイズが大きく難読化もされていないので、本番環境での利用は推奨しません。

注意

ver 6.5.0 より、es6-promise は baas.js に内包されなくなりました。 このため、Promise に対応していないブラウザの場合は別途 es6-promise をロードする必要があります。

Promise に対応していないブラウザは、主に Internet Explorer (全バージョン)、および Android 4.4 以下です。詳細は Can I use Promise? を参照してください。

なお、es6-promise の最新版は es6-promise より入手できます。

2.2. JavaScriptライブラリのロード(Webアプリケーションの場合)

HTML ファイル内から、SDK の JavaScript ライブラリをロードします。 以下に例を示します。

<!DOCTYPE html>
<html>
<head lang="ja">
    <meta charset="UTF-8">
    <title>Sample</title>
    <script src="js/es6-promise.auto.min.js"></script>
    <script src="js/baas.min.js"></script>
</head>
<body>
...

2.2.1. WebView から使用する場合

アプリ内の WebView から本 SDK を使用する場合は、 JavaScript と DOM Storage の両方を有効化する必要があります。

以下に例を示します。

WebSettings settings = webView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setDomStorageEnabled(true);

2.3. JavaScriptライブラリの組み込み(Node.jsの場合)

Node.js へのライブラリの組み込み手順は以下のとおりです。

Node.js アプリケーションディレクトリに package.json がまだ無い場合は npm init を実行して package.json を作成してください。

次に、アプリケーションディレクトリ(package.jsonが存在するディレクトリ)で 以下を実行してライブラリを組み込んでください。ライブラリは npmjs.com から ダウンロードされます。

$ npm install @nec-baas/jssdk --save

これで node_modules/ ディレクトリ以下にライブラリが組み込まれます。

アプリケーションからは以下のように require でライブラリをロードすることができます。

const Nebula = require('@nec-baas/jssdk').Nebula;

注意

v7.0 より、パッケージ名が "nebula" から "@nec-baas/jssdk" に変更となりましたので注意してください。

注意

v6.5.1 以降は、require() の後ろに '.Nebula' を付与する必要があります。

2.4. JavaScriptライブラリの組み込み(TypeScriptの場合)

TypeScript から本ライブラリを使用する場合は、Node.js と同様に JavaScript SDK の npm パッケージをインストールしてください。

アプリケーションからは、以下のように import でライブラリをロードすることができます。 型定義(.d.ts)も自動的に参照されますので、エディタや IDE の補完機能を使用することが できます。

import { Nebula } from "@nec-baas/jssdk";

注意

v7.0 より、パッケージ名が "nebula" から "@nec-baas/jssdk" に変更となりましたので注意してください。

なお Nebula 以外のクラス定義もインポートする場合は、それらのクラスも合わせて import に記述する必要があります。例を以下に示します。

import {Nebula, User, Group, Acl, ObjectBucket, FileBucket, FileMetadata} from "@nec-baas/jssdk";

もしくは以下のように '*' でインポートすることもできます。 以下の例では nebula 名前空間以下にインポートされますので、使用する際は "Nebula" などではなく "nebula.Nebula" とする必要がありますので、注意してください。

import * as nebula from "@nec-baas/jssdk";