为什么没有任何SDK可以调用Cloud SQL API?

时间:2019-05-02 08:05:32

标签: google-cloud-platform google-cloud-sql

我想从Cloud Functions调用下面介绍的Cloud SQL API。

然后我找到了用于调用GCP API的库。

但是,似乎没有用于Cloud SQL的任何模块。

我想知道为什么它没有实现。 API相对较新的原因是什么?还是我误解了库的目的,实际上不应该在库中实现它?

2 个答案:

答案 0 :(得分:3)

linked页面的底部,您会找到一种不同语言的示例代码,可通过构建客户端来调用该API。例如,Node.js的示例代码如下所示:

const {google} = require('googleapis');
var sqlAdmin = google.sqladmin('v1beta4');

authorize(function(authClient) {
  var request = {
    // Project ID of the project that contains the instance to be exported.
    project: 'my-project',  // TODO: Update placeholder value.

    // Cloud SQL instance ID. This does not include the project ID.
    instance: 'my-instance',  // TODO: Update placeholder value.

    resource: {
      // TODO: Add desired properties to the request body.
    },

    auth: authClient,
  };

  sqlAdmin.instances.export(request, function(err, response) {
    if (err) {
      console.error(err);
      return;
    }

    // TODO: Change code below to process the `response` object:
    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);
  });
}

要从Cloud Function连接到Cloud SQL实例,请遵循文档here

答案 1 :(得分:0)

您可以使用gcloud sdk调用api。如果您只希望导出数据库,请查看以下文档:https://cloud.google.com/sdk/gcloud/reference/sql/instances/export