implemented forwarding errors to UI
Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
@@ -22,7 +22,21 @@
|
||||
<button type="button" onclick="grantAutorization(365)">Yes - for 1 year</button>
|
||||
<button type="button" onclick="denyAutorization()">No</button>
|
||||
</div>
|
||||
<div id="error" class="error" style="display: none"></div>
|
||||
<div id="error_missing_parameter" class="error">
|
||||
Request does not contain required parameter "<span id="parameter"></span>"!
|
||||
</div>
|
||||
<div id="error_unknown_client" class="error">
|
||||
Client "<span id="client_id"></span>" unknown to backend!
|
||||
</div>
|
||||
<div id="error_unsupported_response_type" class="error">
|
||||
Response type "<span id="response_type"></span>" not supported!
|
||||
</div>
|
||||
<div id="error_missing_code" class="error">
|
||||
Missing response type: code
|
||||
</div>
|
||||
<div id="error_invalid_redirect" class="error">
|
||||
invalid redirect: <span id="redirect_uri"></span>
|
||||
</div>
|
||||
<div id="missing_scopes" class="error" style="display: none">Authorization resource contained neither list of <em>unauthorized scopes</em> nor list of <em>authorized scopes</em>! This is a server problem.</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -18,6 +18,7 @@ function showScope(response,scope){
|
||||
}
|
||||
|
||||
function handleResponse(response){
|
||||
hideAll('error');
|
||||
if (response.ok){
|
||||
response.json().then(json => {
|
||||
if (json.rp) {
|
||||
@@ -43,19 +44,23 @@ function handleResponse(response){
|
||||
});
|
||||
} else {
|
||||
console.log("handleResponse(…) ← ",response);
|
||||
if (response.status == 401){
|
||||
if (response.status == 401){ // unauthorized
|
||||
login();
|
||||
return;
|
||||
}
|
||||
response.json().then(json => {
|
||||
setText('error',"Error: <br/>"+json.error_description);
|
||||
show('error');
|
||||
console.log("handleResponse → error",json);
|
||||
if (json.error) show(json.error);
|
||||
if (json.metadata.client_id) setText('client_id',json.metadata.client_id);
|
||||
if (json.metadata.parameter) setText('parameter',json.metadata.parameter);
|
||||
if (json.metadata.redirect_uri) setText('redirect_uri',json.metadata.redirect_uri);
|
||||
if (json.metadata.response_type)setText('response_type',json.metadata.response_type)
|
||||
});
|
||||
if (json.error != "invalid_request_uri"){
|
||||
/*if (json.error != "invalid_request_uri"){
|
||||
var url = params.get('redirect_uri') + '?' + new URLSearchParams(json).toString();
|
||||
console.log('redirecting to '+url);
|
||||
redirect(url);
|
||||
}
|
||||
}*/
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user