Migrasi dari MSAL Node v3 ke v5

Note

Tidak ada rilis MSAL Node v4. Versi paket ditingkatkan dari v3 langsung ke v5 untuk menyelaraskan pemberian versi msal-node dengan pustaka MSAL.js lainnya. Tidak ada set fitur v4 terpisah.

Menghentikan dukungan untuk Node.js 16 dan 18

MSAL Node v5 tidak lagi mendukung Node.js 16 atau 18; Anda harus menggunakan Node.js 20 atau yang lebih baru.

Dihapus proxyUrl dan customAgentOptions

MSAL Node v5 tidak lagi menyediakan konfigurasi opsional untuk klien HTTP. Parameter proxyUrl dan customAgentOptions telah dihapus dari 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;
};

Pengembang sekarang harus menulis klien HTTP kustom mereka sendiri ketika dukungan proksi diperlukan. Lihat sampel INetworkModule kustom untuk detail implementasi.

Perubahan konfigurasi

protocolMode dipindahkan ke konfigurasi sistem

Parameter protocolMode bukan lagi opsi konfigurasi autentikasi dan sebagai gantinya merupakan opsi konfigurasi sistem.

// 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",
    },
};

Parameter lain yang dihapus

  • Parameter skipAuthorityMetadataCache telah dihapus. Aplikasi tidak lagi menggunakan cache metadata lokal selama inisialisasi otoritas.
  • Parameter encodeExtraQueryParams telah dihapus. Semua parameter kueri tambahan dikodekan secara otomatis.

fromNativeBroker diganti namanya menjadi fromPlatformBroker

AuthenticationResult Dalam objek, fromNativeBroker bidang telah diganti namanya menjadi fromPlatformBroker.