Я использую HTTP Cordova Plugin Advance, чтобы получить токен пользователя с моего сервера, а затем создать URL-адрес из этого токена, чтобы мой текущий пользователь мог войти в профиль своей учетной записи. Мой код выглядит следующим образом:
teetime.page.ts
ionViewWillEnter(){
this.callCloudFunction().then( data => {
this.urlSafe= this.sanitizer.bypassSecurityTrustResourceUrl(this.url);
this.canRender = true;
});
}
async callCloudFunction() {
var memberTokenUrl = 'https://www.example.com/WebResAPI/Api/User/GetNewUserTokenByMemberNumber?authToken=&userToken=' + token + '&clubFriendlyName=MyClub&memberNumber='
var memberToken = await this.getMemberToken(memberTokenUrl);
console.log("Member Token: " + memberToken);
//Create Login URL
this.url = 'https://www.example.com/WebRes/Club/MyClub/LoginWithToken/' + memberToken;
console.log("Login URL: " + this.url);
//Hide Loading Container
await this.loading.dismiss();
return this.url;
}
//Get Member Token
getMemberToken(memberTokenUrl){
return new Promise((resolve, reject) => {
this.http.get(memberTokenUrl, {}, {})
.then(data => {
var memberTok = JSON.parse(data.data).Value ;
resolve(memberTok);
})
.catch(error => {
console.log(error.error);
});
});
}
teetimes.page.html
<ion-content>
<div style="overflow:auto;-webkit-overflow-scrolling:touch" *ngIf="canRender">
<iframe [src]="urlSafe" style="width: 100%; height: 100vh;" frameborder="0"></iframe>
</div>
</ion-content>
ИОС лог консоли
1016 * [Log] Член Токен: 4PHZjQUkGETmF4M9lm7TppjoMhwqHudyhjRGZmyBxY7gCTEgazGIKWekRRLo (cordova.98fc7fcb7c020c1504f6.js, линия 1) [Log] Войти URL:
https://www.example.com/WebRes/Club/MyClub/LoginWithToken/4PHZjQUkGETmF4M9lm7TppjoMhwqHudyhjRGZmyBxY7gCTEgazGIKWekRRLo (cordova.98fc7fcb7c020c1504f6.js, строка 1)
Я могу успешно получить токен с моего сервера и успешно сформировать URL-адрес, но проблема заключается в том, что этот сформированный URL-адрес с пользовательским токеном полностью регистрирует меня в моемAndroid-устройство, но оно не открывает мою учетную запись пользователя в iOS. Я могу прекрасно видеть все журналы в iOS, и я могу получить токен и сформировать URL-адрес, но для этого нужно перенести меня на домашнюю страницу, на которой зарегистрировано, вместо того, чтобы показывать мой зарегистрированный аккаунт.
Однако, если я нажму на URL входа в систему из журнала консоли, это приведет меня к моей учетной записи пользователя в Safari.
Есть идеи, что я здесь не так делаю? Хотя он отлично работает в Android и автоматически входит в мою учетную запись, но в iOS это не работает, и вместо этого он переходит на домашнюю страницу моего сайта.