Engage.initServer(settings)
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
initServer()関数はアプリのサーバー側でEngage SDKを初期化します。この関数はinitServer.handleCookie()関数を含むオブジェクトを返します。initServer()関数を呼び出した後は、アプリのクライアント側でinit()(engage-init.md "Engage.init(settings)")関数を呼び出さなければなりません。
同じsettingsオブジェクトをinitServer() とinit()の両方に渡しますが、initServer()で の 属性を指定しないwebPersonalization(settings-object.html#UUID-60c6365e-ff13-69eb-f0eb-aab96f66de3e_para-idm1903353065604344)属性を指定しません。これはwebPersonalization() 属性がクライアント側でのみ利用可能だからです。
サイドバー。パラメータ
パラメータ
種類
概要
目的
Sitecore Personalizeインスタンスやクッキー設定の詳細。
例3。次のアプリ
NextアプリでinitServer() 関数を使う例があります。 initServer() 関数を呼び出し、返り値を変数に保存しなければなりません。
pages/index.js:
import { useEffect } from "react"; import { init, initServer } from "@sitecore/engage";
const engageSettings = { // ... forceServerCookieMode: true };
const engageServer = initServer(engageSettings);
export async function getServerSideProps({ req, res }) { await engageServer.handleCookie(req, res); return { props: {}, }; };
export default function Home() { // ... };
脚本について以下の点に注目してください:
- settingsオブジェクトでは、 forceServerCookieModeがtrueに設定されています。これにより、クッキーがサーバーから設定されることが保証されます。
- engageServer変数はinitServer()関数の返り値に割り当てられます。これによりengageServerhandleCookie()関数にアクセスできます。
- handleCookie()関数はサーバー上でクッキーを作成し、それをレスポンスヘッダーに含めます。
Nextアプリでサーバーからクッキーを受け取り、ウェブブラウザにクッキーを保存する方法の例があります。
pages/index.js:
export default function Home() { const loadEngage = async () => { // Load Engage API const engage = await init({...engageSettings, webPersonalization: false /* boolean or object. See Settings object for all options. Default: false */ });
// Send VIEW events };
useEffect(() => { loadEngage(); }, );
return ( <></> ); };
このスクリプトでは、同じsettingsオブジェクトがサーバー側のinitServer() 関数に渡されたのと同じinit() 関数に渡されますが、webPersonalization属性はクライアント側でのみ指定されています。
クライアントはサーバーからヘッダーを受け取り、クッキーをウェブブラウザに保存します。