Added Abort Signal
This commit is contained in:
@@ -12,8 +12,11 @@ var GetAssertReq = (getAssert) => {
|
||||
|
||||
return getAssert
|
||||
}
|
||||
function authen()
|
||||
function authen(conditionalUI=false)
|
||||
{
|
||||
if (window.hasOwnProperty("getCredSignal"))
|
||||
window.getCredSignal.abort('Restarting');
|
||||
window.getCredSignal = new AbortController();
|
||||
fetch('{% url 'fido2_begin_auth' %}', {
|
||||
method: 'GET',
|
||||
}).then(function(response) {
|
||||
@@ -25,9 +28,10 @@ var GetAssertReq = (getAssert) => {
|
||||
throw new Error('No credential available to authenticate!');
|
||||
}).then(function(options) {
|
||||
console.log(options)
|
||||
{% if conditionalUI %}
|
||||
options["mediation"] = 'conditional';
|
||||
{% endif %}
|
||||
if (conditionalUI) {
|
||||
options.mediation = 'conditional';
|
||||
}
|
||||
options.signal = window.getCredSignal.signal;
|
||||
return navigator.credentials.get(options);
|
||||
}).then(function(assertion) {
|
||||
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
// Check if conditional mediation is available.
|
||||
const isCMA = await PublicKeyCredential.isConditionalMediationAvailable()
|
||||
if (isCMA) {
|
||||
authen();
|
||||
authen(true);
|
||||
}
|
||||
}
|
||||
})
|
||||
</script>
|
||||
{% include 'FIDO2/Auth_JS.html' with conditionalUI=True %}
|
||||
{% include 'FIDO2/Auth_JS.html' %}
|
||||
|
||||
Reference in New Issue
Block a user