Web sitem için G + oturum açmayı kullanıyorum ve bu sorunu buldum.G + oturum açma düğmesi iki kez geri arama bağlanıyorum
Web sitem araç çubuğu vardır (onun JavaScript ile oluşturma) ve üzerinde G + giriş butonu yüzden araç çubuğu dosyası
[araç çubuğu-notlogin.php]
<script>
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js?onload=render';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
function render()
{
var config = {
"callback": "loginCallback",
"clientid": "xxxxxxxxx.apps.googleusercontent.com",
"cookiepolicy": "single_host_origin",
"requestvisibleactions": "http://schemas.google.com/AddActivity",
"scope": "https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/plus.me https://www.googleapis.com/auth/userinfo.email"
};
$('#googleCustomLoginBtn .buttonText').text('Login with Google');
gapi.signin.render ("gplusLoginBtn", config);
}
</script>
G + JavaScript API takmak araç çubuğu (G + JS API ile), G + oturum açma düğmesini oluşturmak için geri arama işlevi render() işlevini çağırdı. Çok iyi çalışıyor, bu yüzden araç çubuğum giriş durumuna (kullanıcı profilini göster) ve G + oturum açma düğmesine (HTML değiştirildi) dönüştü.
Kullanıcı oturumu kapattığında, araç çubuğu oturum açmama durumunu değiştirir (HTML değiştirilir), tekrar render() işlevini çağırır ve oturum açma düğmesi çalışır.
Ancak, bu sefer iki kez olarak adlandırılan geri arama işlevi (loginCallback()) oturum açarken sorunudur. Geri arama işlevi yeniden bağlanmış gibi görünüyor. (ikinci kez render() öğesini çağırmamaya çalışıyorum ama işaret düğmesi çalışmıyor.)
Düzeltmek için herhangi bir yol var mı? Teşekkür ederim.
tüm fonksiyonlar çalıştırılır sırayı kontrol denediniz böyle
şey? Her işlevin başlangıcında işlev ismini sadece konsola vermekle yapmak oldukça kolay. Size (ve bana) tam olarak neyin nefret ettiği hakkında biraz daha içgörü verir. Ayrıca: jsfiddle.net demosu oluşturabilir misiniz? Bu şekilde size yardımcı olacak bir kod bulmaya çalışabiliriz. – Korijn
Bunu çözdünüz mü? Eğer evet ise, çözümü paylaşır mısınız? –
Bunun nedeni, Google’ın Google + 'ya bağlandığınızda otomatik olarak oturum açmayı denemesi ve daha önce uygulamayı yetkilendirmesi olabilir. Hesabınızı çıkış yaparak gizli olarak test etmeyi deneyin. –