Giao diện đại diện cho dịch vụ Xác thực Firebase.
Xem mục Xác thực Firebase để biết hướng dẫn đầy đủ về cách sử dụng dịch vụ Xác thực Firebase.
Chữ ký:
export interface Auth
Thuộc tính
Tài sản | Loại | Mô tả |
---|---|---|
ứng dụng | Ứng dụng Firebase | FirebaseApp được liên kết với phiên bản dịch vụ Auth . |
cấu hình | Cấu hình | Config (Cấu hình) dùng để khởi tạo phiên bản này. |
currentUser | Người dùng | rỗng | Người dùng hiện đang đăng nhập (hoặc rỗng). |
emulatorConfig | EmulatorConfig | rỗng | Cấu hình trình mô phỏng hiện tại (hoặc rỗng). |
languageCode | chuỗi | rỗng | Mã ngôn ngữ của thực thể Auth. |
name | chuỗi | Tên của ứng dụng liên kết với thực thể dịch vụ Auth . |
chế độ cài đặt | AuthSettings (Cài đặt xác thực) | Chế độ cài đặt của thực thể Xác thực. |
tenantId | chuỗi | rỗng | Mã đối tượng thuê của thực thể Xác thực. |
Phương thức
Phương thức | Mô tả |
---|---|
authStateSẵn sàng() | trả về lời hứa sẽ phân giải ngay lập tức khi trạng thái xác thực ban đầu được thiết lập. Khi lời hứa được thực hiện, người dùng hiện tại có thể là người dùng hợp lệ hoặc null nếu người dùng đó đã đăng xuất. |
beforeAuthStateChanged(callback, onabort) | Thêm lệnh gọi lại chặn chạy trước khi thay đổi trạng thái xác thực sẽ thiết lập người dùng mới. |
onAuthStateChanged(nextOrObserver, lỗi, đã hoàn tất) | Thêm trình quan sát cho các thay đổi đối với trạng thái đăng nhập của người dùng. |
onIdTokenChanged(nextOrObserver, lỗi, đã hoàn tất) | Thêm trình quan sát cho các thay đổi đối với mã nhận dạng của người dùng đã đăng nhập. |
setPersistence(persistence) | Thay đổi loại dữ liệu cố định trên thực thể Auth . |
signOut() | Đăng xuất người dùng hiện tại. Thao tác này không tự động thu hồi mã thông báo mã nhận dạng của người dùng. |
updateCurrentUser(người dùng) | Đặt người dùng được cung cấp là Auth.currentUser một cách không đồng bộ trên phiên bản Auth. |
useDeviceLanguage() | Đặt ngôn ngữ hiện tại thành tuỳ chọn trình duyệt/thiết bị mặc định. |
Ứng dụng xác thực
FirebaseApp được liên kết với phiên bản dịch vụ Auth
.
Chữ ký:
readonly app: FirebaseApp;
Auth.config
Config (Cấu hình) dùng để khởi tạo phiên bản này.
Chữ ký:
readonly config: Config;
Auth.currentUser
Người dùng hiện đang đăng nhập (hoặc rỗng).
Chữ ký:
readonly currentUser: User | null;
Auth.emulatorConfig
Cấu hình trình mô phỏng hiện tại (hoặc rỗng).
Chữ ký:
readonly emulatorConfig: EmulatorConfig | null;
Mã Auth.languageCode
Mã ngôn ngữ của thực thể Auth.
Đây là một thuộc tính có thể đọc/ghi. Khi bạn đặt thành rỗng, chế độ cài đặt ngôn ngữ mặc định của Bảng điều khiển Firebase sẽ được áp dụng. Mã ngôn ngữ sẽ truyền đến các mẫu thao tác email (đặt lại mật khẩu, xác minh email và thu hồi thay đổi email), mẫu SMS để xác thực điện thoại, trình xác minh reCAPTCHA và thao tác chuyển hướng/bật lên OAuth, miễn là nhà cung cấp được chỉ định hỗ trợ bản địa hoá bằng mã ngôn ngữ được chỉ định.
Chữ ký:
languageCode: string | null;
Tên xác thực
Tên của ứng dụng liên kết với thực thể dịch vụ Auth
.
Chữ ký:
readonly name: string;
Cài đặt xác thực
Chế độ cài đặt của thực thể Xác thực.
API này dùng để chỉnh sửa/đọc các tuỳ chọn liên quan đến cấu hình, chẳng hạn như chế độ xác minh ứng dụng để xác thực điện thoại.
Chữ ký:
readonly settings: AuthSettings;
Mã xác thực
Mã đối tượng thuê của thực thể Xác thực.
Đây là một thuộc tính có thể đọc/ghi. Khi bạn đặt mã đối tượng thuê của một thực thể Xác thực, tất cả các hoạt động đăng nhập/đăng ký trong tương lai sẽ chuyển mã đối tượng thuê này và đăng nhập hoặc đăng ký người dùng vào dự án đối tượng thuê được chỉ định. Khi bạn đặt chính sách này thành rỗng, người dùng sẽ đăng nhập vào dự án mẹ.
Chữ ký:
tenantId: string | null;
Ví dụ
// Set the tenant ID on Auth instance.
auth.tenantId = 'TENANT_PROJECT_ID';
// All future sign-in request now include tenant ID.
const result = await signInWithEmailAndPassword(auth, email, password);
// result.user.tenantId should be 'TENANT_PROJECT_ID'.
Auth.authStateSẵn sàng()
trả về lời hứa sẽ phân giải ngay lập tức khi trạng thái xác thực ban đầu được thiết lập. Khi lời hứa được thực hiện, người dùng hiện tại có thể là người dùng hợp lệ hoặc null
nếu người dùng đó đã đăng xuất.
Chữ ký:
authStateReady(): Promise<void>;
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Auth.beforeAuthStateChanged()
Thêm lệnh gọi lại chặn chạy trước khi thay đổi trạng thái xác thực sẽ thiết lập người dùng mới.
Chữ ký:
beforeAuthStateChanged(callback: (user: User | null) => void | Promise<void>, onAbort?: () => void): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
số gọi lại | (người dùng: Người dùng | rỗng) => vô hiệu | Lời hứa<vô hiệu> | lệnh gọi lại được kích hoạt trước khi đặt giá trị người dùng mới. Nếu điều này gửi, thì hệ thống sẽ chặn không cho thiết lập người dùng. |
onHuỷ | () => trống | lệnh gọi lại được kích hoạt nếu một lệnh gọi lại beforeAuthStateChanged() sau đó gửi, cho phép bạn huỷ mọi tác dụng phụ. |
Trường hợp trả lại hàng:
Phương thức Auth.onAuthStateChanged()
Thêm trình quan sát cho các thay đổi đối với trạng thái đăng nhập của người dùng.
Để giữ lại hành vi cũ, hãy xem phần Auth.onIdTokenChanged().
Chữ ký:
onAuthStateChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
NextOrObserver | NextOrObserver<Người dùng | rỗng> | lệnh gọi lại được kích hoạt khi thay đổi. |
error | ErrorFn | Không dùng nữa. Lệnh gọi lại này không bao giờ được kích hoạt. Lỗi đăng nhập/đăng xuất có thể mắc trong các lời hứa được trả về từ chức năng đăng nhập/đăng xuất. |
đã hoàn tất | Hoàn thành tệp | Không dùng nữa. Lệnh gọi lại này không bao giờ được kích hoạt. |
Trường hợp trả lại hàng:
Phương thức Auth.onIdTokenChanged()
Thêm trình quan sát cho các thay đổi đối với mã nhận dạng của người dùng đã đăng nhập.
Bao gồm các sự kiện đăng nhập, đăng xuất và làm mới mã thông báo.
Chữ ký:
onIdTokenChanged(nextOrObserver: NextOrObserver<User | null>, error?: ErrorFn, completed?: CompleteFn): Unsubscribe;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
NextOrObserver | NextOrObserver<Người dùng | rỗng> | lệnh gọi lại được kích hoạt khi thay đổi. |
error | ErrorFn | Không dùng nữa. Lệnh gọi lại này không bao giờ được kích hoạt. Lỗi đăng nhập/đăng xuất có thể mắc trong các lời hứa được trả về từ chức năng đăng nhập/đăng xuất. |
đã hoàn tất | Hoàn thành tệp | Không dùng nữa. Lệnh gọi lại này không bao giờ được kích hoạt. |
Trường hợp trả lại hàng:
Phương thức Auth.setPersistence()
Thay đổi loại dữ liệu cố định trên thực thể Auth
.
Điều này sẽ ảnh hưởng đến phiên Xác thực hiện đã lưu và áp dụng kiểu lưu trữ này cho các yêu cầu đăng nhập trong tương lai, bao gồm cả đăng nhập bằng yêu cầu chuyển hướng.
Nhờ đó, người dùng có thể dễ dàng chỉ định liệu phiên của họ có được ghi nhớ hay không khi đăng nhập. Điều này cũng giúp bạn dễ dàng không bao giờ duy trì trạng thái Xác thực cho các ứng dụng được người dùng khác chia sẻ hoặc có dữ liệu nhạy cảm.
Phương thức này không hoạt động trong môi trường Node.js.
Chữ ký:
setPersistence(persistence: Persistence): Promise<void>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
bền vững | Khả năng duy trì | Giá trị Persistence để sử dụng. |
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Ví dụ
auth.setPersistence(browserSessionPersistence);
Auth.signOut()
Đăng xuất người dùng hiện tại. Thao tác này không tự động thu hồi mã thông báo mã nhận dạng của người dùng.
Các bản sao Auth được tạo bằng FirebaseServerApp không hỗ trợ phương thức này.
Chữ ký:
signOut(): Promise<void>;
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Phương thức Auth.updateCurrentUser()
Đặt người dùng được cung cấp là Auth.currentUser một cách không đồng bộ trên phiên bản Auth.
Một bản sao mới của người dùng được cung cấp sẽ được tạo và đặt làm currentUser.
Thao tác này sẽ kích hoạt trình nghe Auth.onAuthStateChanged() và Auth.onIdTokenChanged() cho các phương thức đăng nhập khác.
Thao tác này sẽ không thực hiện được kèm theo lỗi nếu người dùng cần cập nhật thuộc về một dự án Firebase khác.
Chữ ký:
updateCurrentUser(user: User | null): Promise<void>;
Thông số
Thông số | Loại | Mô tả |
---|---|---|
người dùng | Người dùng | rỗng | Người dùng mới. |
Trường hợp trả lại hàng:
Lời hứa<vô hiệu>
Phương thức Auth.useDeviceLanguage()
Đặt ngôn ngữ hiện tại thành tuỳ chọn trình duyệt/thiết bị mặc định.
Chữ ký:
useDeviceLanguage(): void;
Trường hợp trả lại hàng:
trống