Для приложения ioni c 4 мне нужно расширить плагин Cordova "InAppBrowser" для iOS. Я уже сделал это для Android, но я не могу сделать то же самое с iOS частью этого плагина.
При открытии указанного URL я хочу выполнить базовую c аутентификацию. Имя пользователя и пароль должны быть проанализированы из URL-адреса или загружены из некоторых переменных, которые я предоставлю методу inappbrowser.create.
Мое быстрое и грязное решение для этого в android заключается в следующем:
В InAppBrowser. java
Log.d("theUrlFromIonic", view.getUrl());
if(view.getUrl().contains("?auth=")) {
String UserName = null;
String Password = null;
String[] params = view.getUrl().split("=");
byte[] decodedBytes = Base64.getDecoder().decode(params[1]);
String decodedString = new String(decodedBytes);
Log.d("theUrlFromIonic decod",decodedString);
String[] values = decodedString.split(":");
String user = values[0];
String pw = values[1];
UserName = user;
Password = pw;
Log.d("theUrlFromIonic user", user);
Log.d("theUrlFromIonic pw", pw);
if (UserName != null && Password!= null) {
handler.proceed(UserName, Password);
return;
}
}
В файле ioni c я открываю браузер так:
const base64Auth = btoa(item.userName + ':' + item.password);
const url = 'https://myfancyurl.com?auth=' + base64Auth;
const target = '_self';
const options = 'location=yes';
const browser = this.iab.create(url, target, options);
Но сейчас я пытаюсь достичь это или что-то подобное для iOS. Кто-нибудь может мне помочь?