I followed a course on some website to get token from web authentification.
I press a button, an in app browser open, i put my id and password, get redirected but my browser are not closing. I don’t understand why.
Here’s my code :
public apiMessages(): Promise<any>{
return new Promise(function(resolve, reject) {
var browserRef = window.cordova.InAppBrowser.open("https://test.api.test.fr/v1/oauth2/authorize?client_id=XXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX&response_type=token&redirect_uri=https://test.api.test.fr/redirect");
browserRef.addEventListener("loadstart", (event) => {
if ((event.url).indexOf("https://test.api.test.fr/redirect") === 0) {
browserRef.removeEventListener("exit", (event) => {});
browserRef.close();
var responseParameters = ((event.url).split("#")[1]).split("&");
var parsedResponse = {};
for (var i = 0; i < responseParameters.length; i++) {
parsedResponse[responseParameters[i].split("=")[0]] = responseParameters[i].split("=")[1];
}
if (parsedResponse["access_token"] !== undefined && parsedResponse["access_token"] !== null) {
resolve(parsedResponse);
} else {
reject("Problem authenticating ");
}
}
});
browserRef.addEventListener("exit", function(event) {
reject("The sign in flow was canceled");
});
});
}
I don’t know why this
if ((event.url).indexOf("https://test.api.test.fr/redirect") === 0)
Isn’t working…