Polymer&google cloud端点转到后端

kai*_*ite 2 google-app-engine google-cloud-endpoints polymer

我正试图从聚合物1.0获取我的谷歌云终端所有设置和工作(后端和调度器上的appengine),但google-api-loader/google-client-loader(尝试两者)拒绝确认我的端点,谷歌api-loader没有任何事情发生就绪事件永远不会触发,谷歌客户端加载它确实但尝试获取此网址:

https://content.googleapis.com/discovery/v1/apis/jobs/v1/rest?fields=rootUrl%2CservicePath%2Cresources%2Cparameters%2Cmethods&pp=0
Run Code Online (Sandbox Code Playgroud)

哪个谷歌全球apis,而不是我的端点.

码:

<polymer-element name="job-service" attributes="jobs">                                                                                                                                                             
    <template>                                                                                                                                                                                                     
        <google-api-loader id="api" name="jobs" version="v1" appId="MyAppID" apiRoot="http://localhost:8082/_ah/api" root="http://localhost:8082/_ah/api">                                                                                                                                                               
        </google-api-loader>                                                                                                                                                                                    
    </template>                                                                                                                                                                                                    
    <script>                                                                                                                                                                                                                                                                                                                                                                                         
    Polymer({                                                                                                                                                                                         
        is: 'job-service',                                                                                                                                                                                         
        ready: function() {                                                                                                                                                                                        
            var setJobs = (function(data) {                                                                                                                                                                        
                this.jobs = data.result.jobs;                                                                                                                                                                      
            }).bind(this);                                                                                                                                                                                         

            this.$.api.addEventListener('google-api-load', (function() {                                                                                                                                           
                this.api = this.$.api.api;                                                                                                                                                                         
                this.api.getJobs().then(setJobs);                                                                                                                                                                  
            }).bind(this));                                                                                                                                                                                        
        },                                                                                                                                                                                                         
    });                                                                                                                                                                                                            
    </script>                                                                                                                                                                                                      
</polymer-element>             
Run Code Online (Sandbox Code Playgroud)

尝试更新google-apis以掌握没有变化.

这是我的bower.json:

{
  "name": "polymer-project",
  "dependencies": {
    "paper-header-panel": "PolymerElements/paper-header-panel#^1.0.0",
    "paper-item": "PolymerElements/paper-item#^1.0.0",
    "google-apis": "GoogleWebComponents/google-apis#master",
    "paper-icon-button": "PolymerElements/paper-icon-button#^1.0.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

谢谢

Sca*_*ami 6

一些说明:

google-client-loader 是你想要的


在新版本之前,您必须依赖#master(因为您已经在做),因为root/apiRoot修复尚未发布.


使用Polymer 1.0,camel-cased属性变为小写,因此传入apiRoot实际上是apiroot属性.你想要的是设置api-root和/或app-id代替(是的,我知道那部分令人困惑......,请参阅迁移指南)

<google-client-loader
   id="api" name="jobs" version="v1"
   app-id="MyAppID" api-root="http://localhost:8082/_ah/api">
Run Code Online (Sandbox Code Playgroud)

app-id只要api-root设置,就不会使用.将此部署到服务器后,您必须将其删除api-root


您的代码仍然是Polymer <0.6而不是Polymer 1.0(除非您复制了一些旧代码).它应该如下所示(请参阅迁移指南):

<dom-module id="job-service">
  <template>
    ...
  </template>
</dom-module>

<script>
  Polymer({
    is: 'job-service',
    ...
  )}
</script>
Run Code Online (Sandbox Code Playgroud)