次の方法で共有


要求プロパティ オブジェクト

この記事では、Microsoft Dynamics 365 Commerce での要求プロパティ オブジェクトについて説明します。

要求プロパティ オブジェクトは HTTP 要求を表し、要求された URL、ロケール、デバイス、ユーザー、クッキー、クエリ文字列パラメーターなど、さまざまなデータ プロパティが含まれます。 this.props.context という名前の読み取り専用要求コンテキスト オブジェクトにアクセスでき、また、モジュールの動作は必要に応じて変更できます。

次の例では、要求コンテキスト内から要求プロパティ オブジェクトにアクセスする方法を示します。

if (this.props.context.request.user.isAuthenticated) {
    userName = this.props.context.request.user.signinName ? this.props.context.request.user.signinName : '';
    firstName = this.props.context.request.user.firstName ? this.props.context.request.user.firstName : '';
    lastName = this.props.context.request.user.lastName ? this.props.context.request.user.lastName : '';
}

一般プロパティ

  • url – 要求された URL。

  • ロケール ー ロケール コンテキスト (たとえば、「en-us」)。

  • textDirection ー テキストの方向 (使用可能な値は 「rtl」、および 「ltr」という値)。

  • sitePath ー サイトのフル パス。

  • デバイス ー 要求が送信されたデバイス。

    • タイプ ー デバイス タイプ (たとえば「pc」)。
  • user – ユーザーに関する情報。 プロパティは次のとおりです。

    • token
    • isAuthenticated
    • signinURL
    • signoutURL
    • signUpUrl
    • editProfileUrl
    • signinName
    • 名前
    • firstName
    • lastName
    • emailAddress
    • customerAccountNumber
  • クエリ : – クエリ文字列パラメータの一覧。

  • クッキー ー クッキー情報。

インターフェイス

interface IParsedQSP<TValue> {
    hasValue: boolean;
    isTruthy: boolean;
    value: TValue | undefined;
}

interface IRequestContextUrl {
    serverUrl: string;
    serverPageUrl: string;
    requestUrl: URL;
    staticCdnUrl: string;
}

interface IRequestContextParams {
    mock?: string;
    isDebug: boolean;
    isEditor: boolean;
    concatJs: IParsedQSP<boolean | string | number | undefined>;
    theme: string;
}

interface IRequestContextDevice {
    Type: string;
}

interface IRequestContextUser {
    token: string;
    isAuthenticated: boolean;
    signInUrl?: string;
    signOutUrl?: string;
    signUpUrl?: string;
    editProfileUrl?: string;
    signinName?: string;
    name?: string;
    firstName?: string;
    lastName?: string;
    emailAddress?: string;
    customerAccountNumber?: string;
}

interface IRequestContextFeatures {
    [switchName: string]: boolean;
}

interface IRequestContextHeaders {
    readonly [header: string]: string;
}

interface IRequestContext {
    url: IRequestContextUrl;
    locale: string;
    market?: string;
    textDirection: string;
    sitePath?: string;
    params: IRequestContextParams;
    device: IRequestContextDevice;
    user: IRequestContextUser;
    app: IGeneric<IAny>;
    query?: IDictionary<string>;
    apiSettings: ICommerceApiSettings;
    channel?: IChannelConfiguration;
    gridSettings?: IGridSettings;
    urlTokens: IUrlTokens;
    operationId: string;
    features: IRequestContextFeatures;
    pageData: IGeneric<IAny>;
    headers: IRequestContextHeaders;
    cookies: ICookieContext;
}

認証済みサインイン状態のモジュールのテスト

一部のモジュールでは、テスト用に状態が signed-in である必要があります。 テスト モジュールにサインインしたユーザーの状態でページ モックを作成する場合、サインイン状態のシュミレーションの手順に従います。

追加リソース

アプリ設定

プラットフォーム設定ファイル

モジュール定義ファイルの拡張

Cookie API の概要

対話型コンポーネントの概要

ローカル開発中にサインイン状態をモックする

コンテキストに基づいてモジュール プロパティを表示するように構成する

CultureInfoFormatter クラスを使用したグローバライズ モジュール

Azure Key Vault を使用してキー管理のセキュリティを強化する