目次
環境
- kintone セキュアアクセス
config用グローバル名前空間オブジェクトを作成する
PHPのapiと連携するkintoneカスタマイズを行なっていると、apiのURLを一括管理したい時がある。
開発環境のAPI URLと本番環境のAPI URLを切り替える必要があるのだが、kintoneのアプリでは基本的にアプリごとにjsファイルを用意するので、全部のファイルの中身をのぞいて書き換える必要がある。
ふと、config.jsに変数を用意しておいて、それを参照するようにしたらいいのではないか、と思いついた。
kintoneが正常に動作しなくなる可能性があるため、既存のグローバルオブジェクトを書き換えないようにしてください。 グローバル変数を使わず、無名関数の関数スコープ変数を使って変数を定義してください。やむを得ずスコープ間で共有する変数を使用する場合は、名前空間オブジェクトを使用してください。 kintone JavaScript コーディングガイドライン – cybozu developer network
という「コーディングガイドライン」があるので、非推奨ではあるが、名前空間オブジェクトを用意してみた。
var ProjectNameSpace = {};//名前空間オブジェクト ProjectNameSpace.api_url = 'https://some.dev.api.url/';
これをconfig.jsとして保存し、kintoneシステム管理の「JavaScript / CSSでカスタマイズ」に放り込む。
すると無事、アプリ側のアプリから参照することができた。
アプリのカスタマイズJavaScriptもURLが決まっているので、同じkintone内であれば参照できる。うまく使えば便利かもしれない。
スペース単位で共通の変数を設定できるといいんだけど……。