PublicKeyCredential: свойство response
Базовая Широко доступная
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с сентября 2021 года.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS), в некоторых или во всех поддерживающих браузерах.
Свойство response только для чтения интерфейса PublicKeyCredential — это объект AuthenticatorResponse, который отправляется аутентификатором в пользовательский агент для создания/получения учетных данных. Информация, содержащаяся в этом ответе, будет использована сервером стороны, полагающейся на данные, для проверки подлинности запроса.
Объект AuthenticatorResponse может быть:
- объектом
AuthenticatorAttestationResponse(еслиPublicKeyCredentialсоздается с помощьюCredentialsContainer.create()) - объектом
AuthenticatorAssertionResponse(еслиPublicKeyCredentialполучено с помощьюCredentialsContainer.get()).
Для проверки создания учетных данных серверу, полагающемуся на данные, необходимо следующее:
- данный ответ
- расширения клиента (полученные с помощью
PublicKeyCredential.getClientExtensionResults()) для проверки запроса.
Примечание: При проверке получения существующих учетных данных серверу, полагающемуся на данные, необходим весь объект PublicKeyCredential и расширения клиента.
Примечание: Это свойство может использоваться только в контекстах верхнего уровня и не будет доступно в <iframe>, например.
Значение
Объект AuthenticatorResponse, содержащий данные, которые получит сценарий стороны, полагающейся на данные, и которые должны быть отправлены на сервер этой стороны для проверки запроса на создание или получение. Этот объект содержит данные от клиента (AuthenticatorResponse/clientDataJSON) и аутентификатора.
Примеры
const options = {
challenge: new Uint8Array(16) /* from the server */,
rp: {
name: "Example CORP",
id: "login.example.com",
},
user: {
id: new Uint8Array(16) /* from the server */,
name: "canand@example.com",
displayName: "Carina Anand",
},
pubKeyCredParams: [
{
type: "public-key",
alg: -7,
},
],
};
navigator.credentials
.create({ publicKey: options })
.then((pubKeyCredential) => {
const response = pubKeyCredential.response;
const clientExtResults = pubKeyCredential.getClientExtensionResults();
// Send response and client extensions to the server so that it can validate
// and create credentials
})
.catch((err) => {
// Deal with any error
});
Спецификации
| Спецификация |
|---|
| Web Authentication: API для доступа к публичным ключам учетных данных — Уровень 3 # dom-publickeycredential-response |
Совместимость браузеров
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
response |
67 | 18 | 60Поддерживает только токены USB U2F. |
54 | 13 | 70 | 9260–92Поддерживает только токены USB U2F. |
49 | 13 | 10.0 | Нет |
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredential/response