0

我正在尝试使用用于节点 js 的谷歌云 Kubernetes API 从谷歌云获取 Kubernetes 集群详细信息。

下面是我在谷歌文档中找到的例子。

var google = require('googleapis');
var container = google.container('v1');

authorize(function(authClient) {
  var request = {
     projectId: 'my-project-id',  
     zone: 'my-zone',  
     clusterId: 'my-cluster-id',  
     auth: authClient,
  };

  container.projects.zones.clusters.get(request, function(err, response){
    if (err) {
       console.error(err);
    return;
  }

// TODO: Change code below to process the `response` object and send the detail back to client.

  console.log(JSON.stringify(response, null, 2));
  });
});

function authorize(callback) {
   google.auth.getApplicationDefault(function(err, authClient) {
     if (err) {
       console.error('authentication failed: ', err);
       return;
   }
   if (authClient.createScopedRequired && authClient.createScopedRequired()) {
       var scopes = ['https://www.googleapis.com/auth/cloud-platform'];
       authClient = authClient.createScoped(scopes);
   }
   callback(authClient);
  });
}

由于 google get API 是异步函数,我如何将 API 的响应返回给客户端。

4

1 回答 1

0

问题是你想用这些数据做什么?这不是 API 是否异步的问题,这段代码应该在控制台中返回与此请求相同的 JSON:

GET https://container.googleapis.com/v1beta1/projects/[PROJECT ID]/locations/[ZONE]/clusters/[CLUSTER NAME]

函数和回调应该注意它是异步的。

于 2018-03-06T15:53:22.223 回答