我正在开发一个angularjs应用程序,其中Google登录是其中一项功能。
我正在使用此链接来实现功能
https://blog.codecentric.de/en/2014/06/angularjs-google-sign-integration/。
这里也是加载页面时调用的脚本
`
<script type="text/javascript">
(function () {
var p = document.createElement('script');
p.type = 'text/javascript';
p.async = true;
p.src = 'https://apis.google.com/js/platform.js?onload=onLoadCallback';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(p, s);
})();
</script>
`
这是正确的方式吗?我如何从谷歌获取数据并向用户显示数据,以及他是否乐意按下注册然后进行签名。我已经将我的应用程序创建到google api服务中并尝试了很多选项,但到目前为止还没有成功。
感谢您的建议。
答案 0 :(得分:1)
这有一个问题,你将直接登录而不被点击,这可能是将来的问题 试试这样的事情
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/client.js?onload=onLoadCallback';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
</script>
在视图中
function login()
{
var myParams = {
'clientid' : 'YOUR_CLIENT_ID.apps.googleusercontent.com', //You need to set client id
'cookiepolicy' : 'single_host_origin',
'callback' : 'loginCallback', //callback function
'approvalprompt':'force',
'scope' : 'https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/plus.profile.emails.read'
};
gapi.auth.signIn(myParams);
}
将此代码转换为Angular。
有关详细信息,请参阅此question