App Configuration API
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Headless Services App Configuration APIは、開発者が以下の設定を設定できるようにします。
- Sitecore JavaScript Services SDK(JSS)アプリケーションをSitecoreにインポートするか、JSSアプリケーションを統合モードで実行します。
- 高度なSitecoreエディタを、ASP.NETレンダリングSDKおよびJSS for Next.jsで構築したアプリケーションと統合します。
JSSアプリケーションの設定パッチは以下のファイルに追加できます:
- 公式テンプレートに基づくJSSアプリケーションについては、アプリケーションのソースコードの/sitecore/configディレクトリに必要な
設定を含みます。 - Sitecoreインスタンスでは、名前を変更して \App_Config\Sitecore\JavaScriptServices\Sitecore.JavaScriptServices.ExampleApp.config.exampleを編集できます。
パッチは
App Configuration APIの例
最小構成には以下の必要な属性が含まれます:
- name
- sitecorePath
- inherits
例えば:
App Configuration API属性
以下の表は利用可能なアプリ構成属性とそのデフォルト値を一覧にしています。
\App_Config\Sitecore\JavaScriptServices\Sitecore.JavaScriptServices.Apps.configファイルのdefaults設定パッチでは、利用可能な属性のデフォルト値を確認できます。
!ヒントアプリ構成APIには、configuration.replaceConfigurationTokensパイプラインによって実装された基本的なトークン置換システムが含まれています。デフォルトでは、パイプラインは $nameトークンのみをサポートしています。
Sitecoreでアプリを設定するには、以下の属性を使用できます:
属性
使用例
name
必須。アプリケーションの一意名称。
sitecorePath
必須。インポート時のアプリケーションのコンテンツとルートへのパス。最初のインポート時に作成されます。
inherits
必須。他の指定されていない設定を継承する app を示します。継承は複数の app 定義を通じて連鎖的に行われます。
filesystemPath
JavaScriptレンダリングSDKアプリケーションのファイルシステムの展開パス。package.jsonのsitecoreDistPathと一致しなければなりません。
デフォルト: /dist/$name
serverBundle
アプリケーションのバンドルファイル名 server.js.
デフォルト: server.bundle
importUser
インポートプロセス中に使用するSitecoreユーザーアカウント。ユーザーアカウントを指定することで、セキュリティとワークフローを用いてインポートの操作を制限できます。
デフォルト: sitecore\JssImport
importLanguage
マニフェストにlanguage値が含まれていない場合にインポート時に使うSitecoreのフォールバック言語です。
デフォルト: en
importDatabase
インポート時に使うためのSitecoreデータベース。
デフォルト: master
importDevice
インポートプロセスでレンダリングが作成されるデバイスレイヤーです。
デフォルト: /sitecore/layout/Devices/Default
rootPlaceholders
アプリのレイアウトのルートにあるカンマ区切られたプレースホルダー名のリストです。
デフォルト: main
templatesPath
生成されたテンプレートをインポートするためのパス。もしパスが存在しない場合は、インポートプロセス中に作成され、祖先フォルダも含まれます。
デフォルト: /sitecore/templates/$name
renderingsPath
生成されたレンダリングをインポートするためのパスです。もしパスが存在しない場合は、インポートプロセス中に作成され、祖先フォルダも含まれます。
デフォルト: /sitecore/layout/renderings/$name
layoutPath
アプリのメインレイアウトをインポートするためのパスです。パスが存在しない場合は、インポートプロセス中に作成され、祖先フォルダも含まれます。
デフォルト: /sitecore/layout/Layouts/JavaScriptServices/$name
placeholdersPath
生成されたプレースホルダー設定をインポートするためのパスです。もしパスが存在しない場合は、インポートプロセス中に作成され、祖先フォルダも含まれます。
デフォルト: /sitecore/layout/placeholder settings/$name
appDatasourcesPath
アプリレベルのデータソースアイテムをインポートするためのパスです。パスが存在しない場合は、インポートプロセス中に作成され、祖先フォルダも含まれます。
デフォルト: /sitecore/content/$name/Components
routeDatasourcesPath
ルートレベルのデータソース項目のために、ルートアイテムの下に子フォルダ名を作成します。
デフォルト: Page Components
mediaLibraryPath
メディアアイテムのインポートパス。パスが存在しない場合は、インポートプロセス中に作成され、祖先フォルダも含まれます。
デフォルト: /sitecore/media library/$name
defaultWorkflow
デフォルトのワークフローは生成されたテンプレートの標準値に適用されました。
デフォルト: /sitecore/system/Workflows/JSS Development Workflow
appTemplate
生成されたルートアプリアイテムのテンプレート。変更された場合、このテンプレートはデフォルトのアプリテンプレートから継承 しなければなりません 。
デフォルト: /sitecore/templates/JavaScriptServices/App
routeBaseTemplate
インポートプロセスがアプリ固有のルートテンプレートを生成する際のベースとして使用すべきテンプレートです。変更された場合、このテンプレートはデフォルトのルートテンプレートから継承 しなければなりません 。
デフォルト: /sitecore/templates/JavaScriptServices/Route
routeTemplateName
生成ルートテンプレートに使う名前。
デフォルト: $name Route
layoutTemplate
アプリのメインレイアウト項目を作成するためのテンプレート。変更する場合は、JSS JavaScript Main Layoutから継承しなければなりません。
デフォルト: /sitecore/templates/JavaScriptServices/JavaScript Main Layout
folderTemplate
汎用フォルダを作成するためのテンプレート(例えばデータソースの項目用)。
デフォルト: /sitecore/templates/Common/Folder
placeholderSettingsFolderTemplate
プレースホルダー設定フォルダを作成するためのテンプレートです。
デフォルト: /sitecore/templates/System/Layout/Placeholder Settings Folder
renderingsFolderTemplate
レンダリングフォルダを作成するためのテンプレート。
デフォルト: /sitecore/templates/System/Layout/Renderings/Rendering Folder
layoutFolderTemplate
アプリのメインレイアウト用のフォルダ作成テンプレートです。
デフォルト: /sitecore/templates/System/Layout/Layout Folder
templateFolderTemplate
テンプレートフォルダを作成するためのテンプレートです。
デフォルト: /sitecore/templates/System/Templates/Template Folder
mediaLibraryFolderTemplate
メディアライブラリ内のフォルダ作成テンプレート。
デフォルト: /sitecore/templates/System/Media/Media folder
protectDeveloperItems
テンプレートやレイアウト項目などの開発者アイテムがインポートプロセスで読み取り専用/保護フラグをオンにしなければならないかどうかを示すブール値。
デフォルト: true
optimizeImportIndexing
インポートが BulkUpdateContext を使う必要があるかどうかを示すブール値で、インポート完了時にインデックスを更新します。
デフォルト: true
datasourceStrategy
データソースインポート戦略の名前。設定は/javaScriptServices/datasourceStrategies設定セクションで設定されたIDatasourceStrategyの名前を参照しなければなりません。
デフォルト: preferRouteLevel
analyzeAllowedControls
インポートがインポートされたルート内のレンダリング使用状況に基づいて、プレースホルダー設定で Allowed Controls フィールドを埋めようと試みるかどうかを示すブール値です。
デフォルト: true
dictionaryDomain
アプリで使用されるSitecore辞書ドメインの名前またはGUID。設定されていない場合、アプリケーション辞書はコンテキストデータベースのデフォルト辞書にフォールバックします。
デフォルト:(なし)
dictionaryPath
現在のアプリの辞書ドメイン項目のアイテムパスまたはGUIDです。パスが存在しない場合は、インポートプロセス中に作成され、祖先フォルダも含まれます。インポートサービスは辞書ドメインを作成し、この場所で辞書エントリをインポートします。
デフォルト: /sitecore/content/$name/$name Dictionary
layoutServiceConfiguration
統合モードアプリレンダリング用の名前付きレイアウトサービス構成の名前です。
可能な値: jss, default
デフォルト: jss
> [!注]
> 一般的に、レイアウトサービスのRESTリクエストには jss 構成Sitecore、TGraphQクエリExperience Edge for XM default 構成を使用します。
>すべてのEdgeクエリには言語の指定が必要です。Edge GraphQLスキーマに対して統合GraphQLクエリを使用する場合、 default 構成によりすべてのクエリに $language 値が注入されます。 jss 構成では言語値は提供されず、バージョン18.0.0との後方互換性を保っています。
graphQLEndpoint
統合されたGraphQLクエリを可能にします。統合GraphQLを使用していない場合は、この属性を削除または省略できます。
serverSideRenderingEngine
JSSアプリのサーバーサイドレンダリング時にどの レンダリングエンジン を使うかをSitecoreに指示します。
可能な値: nodejs と http。
デフォルト: nodejs
serverSideRenderingFunctionName
統合モードでレンダリングする際に呼び出すために serverBundle にエクスポートされたJS関数の名前。
serverSideRenderingEngineの値をnodejsに設定した場合にのみ関係があります。
デフォルト: renderView
serverSideRenderingEngineEndpointUrl
リモートレンダリングホストのHTTPエンドポイントを定義します。
serverSideRenderingEngineの値をhttpに設定した場合にのみ関係があります。
デフォルト:「」
serverSideRenderingEngineApplicationUrl
レンダリングHTML内の任意の相対リンクに対して絶対リンクを作成するためのURLを定義し、エクスペリエンスエディターに必要なものです。指定されていない場合(デフォルト)、インポートプロセスは serverSideRenderingEngineEndpointUrlからホスト名を抽出します。
serverSideRenderingEngineの値をhttpに設定した場合にのみ関係があります。
デフォルト:「」
serverSideRenderingEngineEditOnly
外部レンダリングホストを使用する場合Sitecore非APIルートへのリクエストを処理しなければならないかどうかを制御します。
デフォルト: true。
deploymentSecret
アプリのインポート共有秘密の設定を行います。
秘密は32+のランダム生成文字でなければならず、JSSアプリの scjssconfig.json の秘密と一致していなければなりません。
デフォルト:(なし)
> [!注]
> Sitecore優先開発ワークフローを使用する場合、 deploymentSecretの設定は不要です。
>[!重要]
> この秘密をソース管理にコミットしないでください。すべての環境ごとに固有の秘密を使いましょう。この秘密を持つことで、管理的にSitecoreアイテムを作成・変更する能力が実質的に与えられます。
debugSecurity
セキュリティデバッグを有効または無効化するためのブール値。アプリインポート接続の問題がある場合は true に設定し、共有シークレットのサーバー側処理の詳細をログにしてください。 接続問題はデバッグしない限り使用しないでください。クライアント側のセキュリティ問題を診断 --debugSecurity CLIフラグと組み合わせて使ってください。
デフォルト: false