AngularJS和谷歌云端点:走完所需

Vin*_*hou 4 angularjs google-cloud-endpoints

我是AngularJS的新手,但我非常喜欢AngularJS的工作方式,因此我想将其部署为我的Google云端点后端的客户端.然后我立即得到两个问题:

1,在哪里放置myCallback,所以它能够在ANgularJs控制器中工作?

<script src="https://apis.google.com/js/client.js?onload=myCallback"></script>
Run Code Online (Sandbox Code Playgroud)

2,我怎么能做oauth2?以及控制器如何知道用户是否授权?

gapi.auth.authorize({client_id: myCLIENT_ID,
      scope: mySCOPES,.....
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.

Dou*_*rea 5

要使用AngularJs加载Google Javascript库,传递给Google Javascript Library的onLoad的回调函数是引导AngularJS的函数,如下所示:

这将进入html文件的最后:

<script src="https://apis.google.com/js/client.js?onload=startApp">
Run Code Online (Sandbox Code Playgroud)

然后,在这个<head>部分你引导角度像这样:

<script type='text/javascript'>

function startApp() {

    var ROOT = 'http://<yourapi>.appspot.com/_ah/api';
    gapi.client.load('myapifromgoogleendpoint', 'version1', function() {
        angular.bootstrap(document, ["myModule"]);
    }, ROOT);
}

</script>
Run Code Online (Sandbox Code Playgroud)

如Kenji所述,您还需要从html中删除ng-app指令.

  • 对于上面尝试的人,你必须删除ng-app,例如<html ng-app ="myModule">它是"手动引导"技术之一,并且在设置ng-app时它不起作用. (3认同)