Tài liệu tham khảo này mô tả API Thư viện JavaScript Uỷ quyền của bên thứ ba của Google. Bạn có thể sử dụng API này để tải mã uỷ quyền hoặc mã truy cập từ Google.
Phương thức: google.accounts.oauth2.initCodeClient
Phương thức initCodeClient
khởi chạy và trả về một ứng dụng mã, với các cấu hình trong tham số.
google.accounts.oauth2.initCodeClient(config: CodeClientConfig)
Loại dữ liệu: CodeClientConfig
Bảng sau đây liệt kê các thuộc tính của loại dữ liệu CodeClientConfig
.
Thuộc tính | |
---|---|
client_id
|
Bắt buộc. Mã ứng dụng khách cho ứng dụng của bạn. Bạn có thể tìm thấy giá trị này trong API Console. |
scope
|
Bắt buộc. Danh sách các phạm vi được phân tách bằng dấu cách, xác định những tài nguyên mà ứng dụng của bạn có thể truy cập thay mặt cho người dùng. Các giá trị này sẽ cung cấp thông tin cho màn hình yêu cầu đồng ý mà Google hiển thị cho người dùng. |
include_granted_scopes |
Không bắt buộc, mặc định là true . Cho phép ứng dụng sử dụng tính năng uỷ quyền tăng dần để yêu cầu quyền truy cập vào các phạm vi bổ sung theo ngữ cảnh. Nếu bạn đặt giá trị của tham số này thành false và yêu cầu uỷ quyền được cấp, thì mã thông báo truy cập mới sẽ chỉ bao gồm mọi phạm vi mà scope yêu cầu trong CodeClientConfig này.
|
redirect_uri
|
Bắt buộc đối với trải nghiệm người dùng chuyển hướng. Xác định nơi máy chủ API chuyển hướng người dùng sau khi người dùng hoàn tất quy trình uỷ quyền. Giá trị này phải khớp chính xác với một trong các URI chuyển hướng được uỷ quyền cho ứng dụng OAuth 2.0 mà bạn đã định cấu hình trong API Console và phải tuân thủ Quy tắc xác thực URI chuyển hướng của chúng tôi. Thuộc tính này sẽ bị giao diện người dùng của cửa sổ bật lên bỏ qua. |
callback |
Bắt buộc đối với trải nghiệm người dùng trên cửa sổ bật lên. Hàm JavaScript xử lý phản hồi mã được trả về. Thuộc tính này sẽ bị trải nghiệm người dùng chuyển hướng bỏ qua. |
state |
Không bắt buộc. Nên dùng cho trải nghiệm người dùng khi chuyển hướng. Chỉ định mọi giá trị chuỗi mà ứng dụng của bạn sử dụng để duy trì trạng thái giữa yêu cầu uỷ quyền và phản hồi của máy chủ uỷ quyền. |
enable_granular_consent |
Không dùng nữa, không có hiệu lực nếu được đặt. Hãy xem phần quyền chi tiết để biết thông tin chi tiết về hành vi đồng ý. |
enable_serial_consent |
Không dùng nữa, không có hiệu lực nếu được đặt. Hãy xem phần quyền chi tiết để biết thông tin chi tiết về hành vi đồng ý. |
login_hint |
Không bắt buộc. Nếu biết người dùng nào sẽ uỷ quyền cho yêu cầu, thì ứng dụng của bạn có thể sử dụng thuộc tính này để cung cấp gợi ý đăng nhập cho Google. Khi thành công, bước chọn tài khoản sẽ bị bỏ qua. Giá trị trường sub (phụ) của mã thông báo nhận dạng hoặc địa chỉ email cho người dùng mục tiêu.
Để biết thêm thông tin, hãy xem trường login_hint trong tài liệu về OpenID Connect.
|
hd |
Không bắt buộc. Nếu ứng dụng của bạn biết miền Workspace mà người dùng thuộc về, hãy sử dụng thông tin này để cung cấp gợi ý cho Google. Khi thành công, tài khoản người dùng sẽ bị giới hạn hoặc được chọn trước cho miền đã cung cấp.
Để biết thêm thông tin, hãy xem trường hd trong tài liệu về OpenID Connect.
|
ux_mode |
Không bắt buộc. Chế độ trải nghiệm người dùng để sử dụng cho quy trình uỷ quyền. Theo mặc định, thao tác này sẽ mở quy trình yêu cầu đồng ý trong một cửa sổ bật lên. Các giá trị hợp lệ là popup và redirect .
|
select_account |
Không bắt buộc, mặc định là 'false'. Giá trị Boolean để nhắc người dùng chọn một tài khoản. |
error_callback |
Không bắt buộc. Hàm JavaScript xử lý một số lỗi không phải lỗi OAuth, chẳng hạn như không mở được cửa sổ bật lên hoặc đóng trước khi phản hồi OAuth được trả về.
Trường "type" (loại) của tham số đầu vào cho biết lý do chi tiết.
|
Loại dữ liệu: CodeClient
Lớp này chỉ có một phương thức công khai requestCode, phương thức này sẽ bắt đầu quy trình trải nghiệm người dùng mã OAuth 2.0.
interface CodeClient {
requestCode(): void;
}
Loại dữ liệu: CodeResponse
Đối tượng JavaScript CodeResponse
sẽ được truyền đến phương thức callback
trong giao diện người dùng của cửa sổ bật lên. Trong trải nghiệm người dùng chuyển hướng, CodeResponse
sẽ được truyền dưới dạng tham số URL.
Bảng sau đây liệt kê các thuộc tính của loại dữ liệu CodeResponse
.
Thuộc tính | |
---|---|
code |
Mã uỷ quyền của một phản hồi mã thông báo thành công. |
scope |
Danh sách các phạm vi được người dùng phê duyệt, được phân tách bằng dấu cách. |
state |
Giá trị chuỗi mà ứng dụng của bạn sử dụng để duy trì trạng thái giữa yêu cầu uỷ quyền và phản hồi. |
error |
Một mã lỗi ASCII duy nhất. |
error_description |
Văn bản ASCII mà con người có thể đọc được, cung cấp thêm thông tin, dùng để hỗ trợ nhà phát triển ứng dụng hiểu được lỗi đã xảy ra. |
error_uri |
URI xác định một trang web mà con người có thể đọc được, trong đó có thông tin về lỗi. URI này được dùng để cung cấp cho nhà phát triển ứng dụng thêm thông tin về lỗi. |
Phương thức: google.accounts.oauth2.initTokenClient
Phương thức initTokenClient
khởi chạy và trả về một ứng dụng mã thông báo, với các cấu hình trong tham số.
google.accounts.oauth2.initTokenClient(config: TokenClientConfig)
Loại dữ liệu: TokenClientConfig
Bảng sau đây liệt kê các thuộc tính của loại dữ liệu TokenClientConfig
.
Thuộc tính | |
---|---|
client_id |
Bắt buộc. Mã ứng dụng khách cho ứng dụng của bạn. Bạn có thể tìm thấy giá trị này trong API Console. |
callback |
Bắt buộc. Hàm JavaScript xử lý phản hồi mã thông báo được trả về. |
scope |
Bắt buộc. Danh sách các phạm vi được phân tách bằng dấu cách, xác định những tài nguyên mà ứng dụng của bạn có thể truy cập thay mặt cho người dùng. Các giá trị này sẽ cung cấp thông tin cho màn hình yêu cầu đồng ý mà Google hiển thị cho người dùng. |
include_granted_scopes |
Không bắt buộc, mặc định là true . Cho phép ứng dụng sử dụng tính năng uỷ quyền tăng dần để yêu cầu quyền truy cập vào các phạm vi bổ sung theo ngữ cảnh. Nếu bạn đặt giá trị của tham số này thành false và yêu cầu uỷ quyền được cấp, thì mã thông báo truy cập mới sẽ chỉ bao gồm mọi phạm vi mà scope đã yêu cầu trong TokenClientConfig này.
|
prompt |
Không bắt buộc, mặc định là 'select_account'. Danh sách lời nhắc phân tách bằng dấu cách, phân biệt chữ hoa chữ thường để hiển thị cho người dùng. Các giá trị có thể sử dụng là:
|
enable_granular_consent |
Không dùng nữa, không có hiệu lực nếu được đặt. Hãy xem phần quyền chi tiết để biết thông tin chi tiết về hành vi đồng ý. |
enable_serial_consent |
Không dùng nữa, không có hiệu lực nếu được đặt. Hãy xem phần quyền chi tiết để biết thông tin chi tiết về hành vi đồng ý. |
login_hint |
Không bắt buộc. Nếu biết người dùng nào sẽ uỷ quyền cho yêu cầu, thì ứng dụng của bạn có thể sử dụng thuộc tính này để cung cấp gợi ý đăng nhập cho Google. Khi thành công, bước chọn tài khoản sẽ bị bỏ qua. Giá trị trường sub (phụ) của mã thông báo nhận dạng hoặc địa chỉ email cho người dùng mục tiêu.
Để biết thêm thông tin, hãy xem trường login_hint trong tài liệu về OpenID Connect.
|
hd |
Không bắt buộc. Nếu ứng dụng của bạn biết miền Workspace mà người dùng thuộc về, hãy sử dụng thông tin này để cung cấp gợi ý cho Google. Khi thành công, tài khoản người dùng sẽ bị giới hạn hoặc được chọn trước cho miền đã cung cấp.
Để biết thêm thông tin, hãy xem trường hd trong tài liệu về OpenID Connect.
|
state |
Không bắt buộc. Không nên. Chỉ định mọi giá trị chuỗi mà ứng dụng của bạn sử dụng để duy trì trạng thái giữa yêu cầu uỷ quyền và phản hồi của máy chủ uỷ quyền. |
error_callback |
Không bắt buộc. Hàm JavaScript xử lý một số lỗi không phải lỗi OAuth, chẳng hạn như cửa sổ bật lên không mở được; hoặc đóng trước khi phản hồi OAuth được trả về.
Trường "type" (loại) của tham số đầu vào cho biết lý do chi tiết.
|
Loại dữ liệu: TokenClient
Lớp này chỉ có một phương thức công khai requestAccessToken
, bắt đầu quy trình trải nghiệm người dùng mã thông báo OAuth 2.0.
interface TokenClient {
requestAccessToken(overrideConfig?: OverridableTokenClientConfig): void;
}
Đối số | ||
---|---|---|
overrideConfig |
OverridableTokenClientConfig | Không bắt buộc. Các cấu hình sẽ được ghi đè trong phương thức này. |
Loại dữ liệu: OverridableTokenClientConfig
Bảng sau đây liệt kê các thuộc tính của loại dữ liệu OverridableTokenClientConfig
.
Thuộc tính | |
---|---|
scope |
Không bắt buộc. Danh sách các phạm vi được phân tách bằng dấu cách, xác định các tài nguyên mà ứng dụng của bạn có thể truy cập thay mặt cho người dùng. Các giá trị này sẽ thông báo cho màn hình yêu cầu đồng ý mà Google hiển thị cho người dùng. |
include_granted_scopes |
Không bắt buộc, mặc định là true . Cho phép ứng dụng sử dụng tính năng uỷ quyền tăng dần để yêu cầu quyền truy cập vào các phạm vi bổ sung theo ngữ cảnh. Nếu bạn đặt giá trị của tham số này thành false và yêu cầu uỷ quyền được cấp, thì mã thông báo truy cập mới sẽ chỉ bao gồm mọi phạm vi mà scope đã yêu cầu trong OverridableTokenClientConfig này.
|
prompt |
Không bắt buộc. Danh sách lời nhắc phân tách bằng dấu cách, phân biệt chữ hoa chữ thường để hiển thị cho người dùng. |
enable_granular_consent |
Không dùng nữa, không có hiệu lực nếu được đặt. Hãy xem phần quyền chi tiết để biết thông tin chi tiết về hành vi đồng ý. |
enable_serial_consent |
Đã ngừng hoạt động, không có hiệu lực nếu được đặt. Hãy xem phần quyền chi tiết để biết thông tin chi tiết về hành vi đồng ý. |
login_hint |
Không bắt buộc. Nếu biết người dùng nào sẽ uỷ quyền cho yêu cầu, thì ứng dụng của bạn có thể sử dụng thuộc tính này để cung cấp gợi ý đăng nhập cho Google. Khi thành công, bước chọn tài khoản sẽ bị bỏ qua. Giá trị trường sub (phụ) của mã thông báo nhận dạng hoặc địa chỉ email cho người dùng mục tiêu.
Để biết thêm thông tin, hãy xem trường login_hint trong tài liệu về OpenID Connect.
|
state |
Không bắt buộc. Không nên. Chỉ định mọi giá trị chuỗi mà ứng dụng của bạn sử dụng để duy trì trạng thái giữa yêu cầu uỷ quyền và phản hồi của máy chủ uỷ quyền. |
Loại dữ liệu: TokenResponse
Đối tượng JavaScript TokenResponse
sẽ được truyền đến phương thức gọi lại trong giao diện người dùng của cửa sổ bật lên.
Bảng sau đây liệt kê các thuộc tính của loại dữ liệu TokenResponse
.
Thuộc tính | |
---|---|
access_token |
Mã thông báo truy cập của một phản hồi mã thông báo thành công. |
expires_in |
Thời gian tồn tại của mã truy cập tính bằng giây. |
hd |
Miền được lưu trữ mà người dùng đã đăng nhập thuộc về. |
prompt |
Giá trị lời nhắc được sử dụng trong danh sách giá trị có thể có do TokenClientConfig hoặc OverridableTokenClientConfig chỉ định. |
token_type |
Loại mã thông báo được phát hành. |
scope |
Danh sách các phạm vi được người dùng phê duyệt, được phân tách bằng dấu cách. |
state |
Giá trị chuỗi mà ứng dụng của bạn sử dụng để duy trì trạng thái giữa yêu cầu uỷ quyền và phản hồi. |
error |
Một mã lỗi ASCII duy nhất. |
error_description |
Văn bản ASCII mà con người có thể đọc được, cung cấp thông tin bổ sung, dùng để hỗ trợ nhà phát triển ứng dụng hiểu được lỗi đã xảy ra. |
error_uri |
URI xác định một trang web mà con người có thể đọc được, trong đó có thông tin về lỗi. URI này được dùng để cung cấp cho nhà phát triển ứng dụng thêm thông tin về lỗi. |
Phương thức: google.accounts.oauth2.hasGrantedAllScopes
Kiểm tra xem người dùng đã cấp tất cả phạm vi hoặc phạm vi đã chỉ định hay chưa.
google.accounts.oauth2.hasGrantedAllScopes(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Đối số | ||
---|---|---|
tokenResponse |
TokenResponse
|
Bắt buộc. Một đối tượng TokenResponse .
|
firstScope |
chuỗi | Bắt buộc. Phạm vi cần kiểm tra. |
restScopes |
string[] | Không bắt buộc. Các phạm vi khác cần kiểm tra. |
Giá trị trả về | |
---|---|
boolean | Đúng nếu tất cả các phạm vi đều được cấp. |
Phương thức: google.accounts.oauth2.hasGrantedAnyScope
Kiểm tra xem người dùng có cấp bất kỳ phạm vi hoặc phạm vi nào được chỉ định hay không.
google.accounts.oauth2.hasGrantedAnyScope(
tokenResponse: TokenResponse,
firstScope: string, ...restScopes: string[]
): boolean;
Đối số | ||
---|---|---|
tokenResponse |
TokenResponse
|
Bắt buộc. Một đối tượng TokenResponse .
|
firstScope |
chuỗi | Bắt buộc. Phạm vi cần kiểm tra. |
restScopes |
string[] | Không bắt buộc. Các phạm vi khác cần kiểm tra. |
Giá trị trả về | |
---|---|
boolean | Đúng nếu bất kỳ phạm vi nào được cấp. |
Phương thức: google.accounts.oauth2.revoke
Phương thức revoke
thu hồi tất cả các phạm vi mà người dùng đã cấp cho ứng dụng. Bạn cần có mã thông báo truy cập hợp lệ để thu hồi quyền.
google.accounts.oauth2.revoke(accessToken: string, done: () => void): void;
Đối số | ||
---|---|---|
accessToken |
chuỗi | Bắt buộc. Mã thông báo truy cập hợp lệ. |
callback |
hàm | Không bắt buộc. Trình xử lý RevocationResponse. |
Loại dữ liệu: RevocationResponse
Đối tượng JavaScript RevocationResponse
sẽ được truyền đến phương thức gọi lại của bạn.
Bảng sau đây liệt kê các thuộc tính của loại dữ liệu RevocationResponse
.
Thuộc tính | |
---|---|
successful |
Boolean. true khi thành công, false khi không thành công. |
error |
Chuỗi. Không xác định khi thành công. Một mã lỗi ASCII duy nhất. Điều này bao gồm nhưng không giới hạn ở các mã lỗi OAuth 2.0 tiêu chuẩn. Các lỗi thường gặp đối với phương thức revoke :
|
error_description |
Chuỗi. Không xác định khi thành công. Văn bản ASCII mà con người có thể đọc cung cấp thêm thông tin về thuộc tính error . Nhà phát triển có thể sử dụng thông tin này để hiểu rõ hơn về lỗi đã xảy ra. Chuỗi error_description chỉ có bằng tiếng Anh.
Đối với các lỗi thường gặp được liệt kê trong error , error_description tương ứng:
|