Привет У меня есть веб-просмотр внутри приложения, который показывает страницу аутентификации с использованием сервера идентификации. После аутентификации он перенаправляется в приложение из-за redirect_uri.
Поскольку веб-просмотр уже находится внутри приложения, мне не нужно, чтобы веб-просмотр вызывал redirect_uri для открытия нового экземпляра приложения.
Есть ли способ перехватить это? На андроиде нет поддержки реагирования нативного webView на ShhttStartLoadWithRequest. Я мог бы перехватить при запуске в клиенте экспо, и он остановит его перенаправление формы в приложение.
<WebView source={ { uri:loginSrc}}
ref={(ref) => {this.webView = ref; }}
onNavigationStateChange={(e) => {
console.log("URL DATA Received");
console.log(e.url);
// if (e.url.startsWith("io.test.com://")) {
// console.log("Go back to login")
// e.goBack();
// }
}}
onShouldStartLoadWithRequest={
(data) =>
{
//console.log("start request"); console.log(data);
if (data.url.includes("#code")) {
this.setState({showLoginModal: false});
this._onExtractCode(data);
return false;
}
//console.log("end request");
return true;
}} ></WebView>
Или есть способ предотвратить глубокую ссылку на мое приложение
http://uat-login.funny.com/Account/Login?ReturnUrl=%2Fconnect%2Fauthorize%2Fcallback%3Fnonce%3Dtesting%26client_id%3Dslon_hybrid%26scope%3Dopenid%2520profile%2520email%2520lynx%2520slon%2520offline_access%26redirect_uri%3Dio.test.com%253A%252F%252F%253Fcallback%253Dauthentication%26response_type%3Dcode%2520id_token
Сверху url, есть redirect_uri, который откроет новый экземпляр приложения. Есть ли способ отменить этот запрос.