値の定義とアクセス
値は、Atlas によって保存され、 Atlas Functionsでアクセスできる静的データの一部への名前付き参照です。 値は、関数に直接ハードコーディングする代わりとなります。
つまり、 値により、アプリのビジネス ロジックから配置固有の構成データを分離できます。
値は、次の 2 型のデータに解決される可能性があります。
プレーンテキスト: 定義した通常のJSONオブジェクト、配列、または string 値に解決されます。
シークレット: 定義したシークレット値に解決されます。
値を定義する
UIから、または App Services CLI を使用して、新しい 値 を定義できます。
ページに移動するValues
Triggersページに移動します。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Services見出しの下のTriggersをクリックします。
[ Triggers]ページが表示されます。
Linked App Service: Triggersリンクをクリックします。
サイドバーで、 Build見出しの下のValuesをクリックします。
[Create a Value] をクリックします。
MongoDB Atlas ユーザーの認証
MongoDB Atlas Administration APIキーを使用して、App Services CLI にログします。
appservices login --api-key="<API KEY>" --private-api-key="<PRIVATE KEY>"
値の構成を追加する
新しい値のJSON構成ファイルを、ローカルアプリケーションのvalues
サブディレクトリに追加します。
touch values/<ValueName>.json
各値は独自のJSONファイルで定義されます。 例、 myValue
という名前の値はファイル/values/myValue.json
に定義されます。
構成ファイルは、次の一般的な形式でなければなりません。
{ "name": "<Value Name>", "from_secret": <boolean>, "value": <Stored JSON Value|Secret Name> }
フィールド | 説明 |
---|---|
name | 値の一意の名前。 この名前は、 関数 とルールで値を参照する方法です。 |
from_secret | |
value | 値が参照したときに公開される保存済みデータ:
|
変更を配置します。
次のコマンドを実行して、変更を配置します。
appservices push
値にアクセスする
context.valuesモジュールを使用して、Atlas Function から値の保存されたデータにアクセスできます。
context.values.get("<Value Name>")
例、次の関数は、アクティブなユーザーの ID がプレーンテキスト配列の値adminUsers
に含まれている場合、 true
を返します。
exports = function() { const adminUsers = context.values.get("adminUsers"); const isAdminUser = adminUsers.indexOf(context.user.id) > 0; return isAdminUser; }