我正在创建一个小部件。逃脱我的部分是实施社交媒体身份验证。
小部件是通过嵌入式JavaScript完成的,并接管页面上的<div>
,而不是使用iFrame。
我遇到的问题是我想避免重定向。不是因为我不想处理它们,而是因为我想让小部件尽可能友好。基本的Google Sign按钮创建了处理身份验证客户端的弹出窗口。对于我的用例,它绝对是完美的,除了它需要客户端_id:
<script>
window.googleStart = function() {
gapi.load('auth2', function() {
auth2 = gapi.auth2.init({
client_id: '639034356632-fgcp4bigtn908q2ev3qifl9vfqnsciuj.apps.googleusercontent.com',
// Scopes to request in addition to 'profile' and 'email'
//scope: 'additional_scope'
});
});
}
</script>
我可能是错误的,但是我相信,如果我在嵌入某人的网站上使用此方法,我可以覆盖他们的客户端_id并引起冲突,或者Google可能只是尝试第二次开始尝试并使用其客户端_id。无论哪种情况,我都不认为这是我应该做的。是否有任何方法可以在不重定向的情况下设置客户端身份验证,以便我的小部件不会干扰网站可能使用的Google API?
我有一种使用重定向并避免此问题的方法,但是我真的希望能够完成整个社交身份验证,而无需从小部件嵌入的页面上移动。
您可以使用新的窗口目标。