從 MSAL Node v3 遷移到 v5

Note

目前沒有 MSAL Node v4 版本。 套件版本直接由 v3 增加到 v5,以使 msal-node 的版本編號與其他 MSAL.js 程式庫保持一致。 目前沒有獨立的 v4 功能集。

已停止支援 Node.js 16 和 18

MSAL Node v5 不再支援 Node.js 16 或 18;你必須使用 Node.js 20或更晚的版本。

已移除 proxyUrlcustomAgentOptions

MSAL Node v5 不再提供 HTTP 用戶端的可選設定。 proxyUrlcustomAgentOptions 參數已從 NodeSystemOptions 中移除。

// BEFORE (v3)
NodeSystemOptions = {
    loggerOptions?: LoggerOptions;
    networkClient?: INetworkModule;
    proxyUrl?: string;
    customAgentOptions?: http.AgentOptions | https.AgentOptions;
    disableInternalRetries?: boolean;
    protocolMode?: ProtocolMode;
};

// AFTER (v5)
NodeSystemOptions = {
    loggerOptions?: LoggerOptions;
    networkClient?: INetworkModule;
    disableInternalRetries?: boolean;
    protocolMode?: ProtocolMode;
};

開發者現在必須在需要代理支援時自行撰寫自訂 HTTP 客戶端。 請參閱 自訂 INetworkModule 範例 以了解實作細節。

組態變更

protocolMode 移至系統設定

這個 protocolMode 參數不再是驗證設定選項,而是系統設定選項。

// BEFORE (v3)
const msalConfig = {
    auth: {
        clientId: "your_client_id",
        authority: "https://login.live.com",
        protocolMode: "OIDC",
    },
};

// AFTER (v5)
const msalConfig = {
    auth: {
        clientId: "your_client_id",
        authority: "https://login.live.com",
    },
    system: {
        protocolMode: "OIDC",
    },
};

其他移除參數

  • 已移除 skipAuthorityMetadataCache 參數。 應用程式在權限初始化時不再使用本地的中繼資料快取。
  • 已移除 encodeExtraQueryParams 參數。 所有額外的查詢參數都會自動編碼。

fromNativeBroker 更名為 fromPlatformBroker

在物件中 AuthenticationResult ,該 fromNativeBroker 場已被重新命名為 fromPlatformBroker