我有一个项目希望将其用作跨域服务,以集中来自不同网站的用户。
示例:
跨域服务(CDS):https://cross-domain-services.firebaseapp.com/auth
我的网站a.com和网站b.com将使用iframe调用CDS来登录匿名用户。这样我就可以知道同一个用户访问了website-a.com,还访问了website-b.com
CDS在auth.component.ts
中的功能是getUserId
,它将返回一个userId
示例代码:
getUserId(){
return new Promise(resolve=>{
this.firebase.auth.onAuthStateChanged(user => {
if (user) {
this.currentUser = this.firebase.auth.currentUser
resolve(this.currentUser.uid)
}
})
})
}
但是,我现在停留在我的网站a.com和网站b.com上,不知道如何调用getUserId()
并获取各自的价值。
我尝试根据this post使用以下方法,但是遇到错误:
代码:
(<HTMLIFrameElement>document.getElementById("auth-iframe")).contentWindow.getUserId().then(data=>{
console.log(data)
})
错误:TypeError: document.getElementById(...).contentWindow.getUserId
注意:我的website-a.com,website-b.com和CDS都是用角度6构建的
请帮助我..谢谢...