列出一个位置的数据集。
深入探索
如需查看包含此代码示例的详细文档,请参阅以下内容:
代码示例
Go
在试用此示例之前,请按照使用客户端库的 Cloud Healthcare API 快速入门中的 Go 设置说明进行操作。如需了解详情,请参阅 Cloud Healthcare API Go API 参考文档。
如需向 Cloud Healthcare API 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
import (
"context"
"fmt"
"io"
healthcare "google.golang.org/api/healthcare/v1"
)
// listDatasets prints a list of datasets to w.
func listDatasets(w io.Writer, projectID string, location string) error {
ctx := context.Background()
healthcareService, err := healthcare.NewService(ctx)
if err != nil {
return fmt.Errorf("healthcare.NewService: %w", err)
}
datasetsService := healthcareService.Projects.Locations.Datasets
parent := fmt.Sprintf("projects/%s/locations/%s", projectID, location)
resp, err := datasetsService.List(parent).Do()
if err != nil {
return fmt.Errorf("List: %w", err)
}
fmt.Fprintln(w, "Datasets:")
for _, d := range resp.Datasets {
fmt.Fprintln(w, d.Name)
}
return nil
}
Java
在试用此示例之前,请按照使用客户端库的 Cloud Healthcare API 快速入门中的 Java 设置说明进行操作。如需了解详情,请参阅 Cloud Healthcare API Java API 参考文档。
如需向 Cloud Healthcare API 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
import com.google.api.client.http.HttpRequestInitializer;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.gson.GsonFactory;
import com.google.api.services.healthcare.v1.CloudHealthcare;
import com.google.api.services.healthcare.v1.CloudHealthcare.Projects.Locations.Datasets;
import com.google.api.services.healthcare.v1.CloudHealthcareScopes;
import com.google.api.services.healthcare.v1.model.Dataset;
import com.google.api.services.healthcare.v1.model.ListDatasetsResponse;
import com.google.auth.http.HttpCredentialsAdapter;
import com.google.auth.oauth2.GoogleCredentials;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class DatasetList {
private static final JsonFactory JSON_FACTORY = new GsonFactory();
private static final NetHttpTransport HTTP_TRANSPORT = new NetHttpTransport();
public static void datasetList(String projectId, String regionId) throws IOException {
// String projectId = "your-project-id";
// String regionId = "us-central1";
// Initialize the client, which will be used to interact with the service.
CloudHealthcare client = createClient();
// Results are paginated, so multiple queries may be required.
String parentName = String.format("projects/%s/locations/%s", projectId, regionId);
String pageToken = null;
List<Dataset> datasets = new ArrayList<>();
do {
// Create request and configure any parameters.
Datasets.List request =
client
.projects()
.locations()
.datasets()
.list(parentName)
.setPageSize(100) // Specify pageSize up to 1000
.setPageToken(pageToken);
// Execute response and collect results.
ListDatasetsResponse response = request.execute();
datasets.addAll(response.getDatasets());
// Update the page token for the next request.
pageToken = response.getNextPageToken();
} while (pageToken != null);
// Print results.
System.out.printf("Retrieved %s datasets: \n", datasets.size());
for (Dataset data : datasets) {
System.out.println("\t" + data.toPrettyString());
}
}
private static CloudHealthcare createClient() throws IOException {
// Use Application Default Credentials (ADC) to authenticate the requests
// For more information see https://cloud.google.com/docs/authentication/production
GoogleCredentials credential =
GoogleCredentials.getApplicationDefault()
.createScoped(Collections.singleton(CloudHealthcareScopes.CLOUD_PLATFORM));
// Create a HttpRequestInitializer, which will provide a baseline configuration to all requests.
HttpRequestInitializer requestInitializer =
request -> {
new HttpCredentialsAdapter(credential).initialize(request);
request.setConnectTimeout(60000); // 1 minute connect timeout
request.setReadTimeout(60000); // 1 minute read timeout
};
// Build the client for interacting with the service.
return new CloudHealthcare.Builder(HTTP_TRANSPORT, JSON_FACTORY, requestInitializer)
.setApplicationName("your-application-name")
.build();
}
}
Node.js
在试用此示例之前,请按照使用客户端库的 Cloud Healthcare API 快速入门中的 Node.js 设置说明进行操作。如需了解详情,请参阅 Cloud Healthcare API Node.js API 参考文档。
如需向 Cloud Healthcare API 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
const google = require('@googleapis/healthcare');
const healthcare = google.healthcare({
version: 'v1',
auth: new google.auth.GoogleAuth({
scopes: ['https://www.googleapis.com/auth/cloud-platform'],
}),
});
const listDatasets = async () => {
// TODO(developer): uncomment these lines before running the sample
// const cloudRegion = 'us-central1';
// const projectId = 'adjective-noun-123';
const parent = `projects/${projectId}/locations/${cloudRegion}`;
const request = {parent};
const dataset = await healthcare.projects.locations.datasets.list(request);
console.log(dataset.data);
};
listDatasets();
Python
在试用此示例之前,请按照使用客户端库的 Cloud Healthcare API 快速入门中的 Python 设置说明进行操作。如需了解详情,请参阅 Cloud Healthcare API Python API 参考文档。
如需向 Cloud Healthcare API 进行身份验证,请设置应用默认凭据。如需了解详情,请参阅为本地开发环境设置身份验证。
# Imports the Dict and List types for runtime type hints.
from typing import Dict, List
def list_datasets(project_id: str, location: str) -> List[Dict[str, str]]:
"""Lists the datasets in the project.
See
https://github.com/GoogleCloudPlatform/python-docs-samples/tree/main/healthcare/api-client/v1/datasets
before running the sample.
See https://googleapis.github.io/google-api-python-client/docs/dyn/healthcare_v1.projects.locations.datasets.html#list
for the Python API reference.
Args:
project_id: The project ID or project number of the Google Cloud project you want
to use.
location: The name of the location where the datasets are located.
Returns:
A list of Dataset resources.
"""
# Imports HttpError from the Google Python API client errors module.
# Imports the Google API Discovery Service.
from googleapiclient import discovery
from googleapiclient.errors import HttpError
api_version = "v1"
service_name = "healthcare"
# Returns an authorized API client by discovering the Healthcare API
# and using GOOGLE_APPLICATION_CREDENTIALS environment variable.
client = discovery.build(service_name, api_version)
# TODO(developer): Uncomment these lines and replace with your values.
# project_id = 'my-project'
# location = 'us-central1'
dataset_parent = f"projects/{project_id}/locations/{location}"
datasets = []
request = client.projects().locations().datasets().list(parent=dataset_parent)
while request is not None:
try:
response = request.execute()
if response and "datasets" in response:
datasets.extend(response["datasets"])
# Paginate over results until the list_next() function returns None.
request = (
client.projects()
.locations()
.datasets()
.list_next(previous_request=request, previous_response=response)
)
for dataset in datasets:
print(
f"Dataset: {dataset.get('name')}\nTime zone: {dataset.get('timeZone')}"
)
return datasets
except HttpError as err:
raise err
后续步骤
如需搜索和过滤其他 Google Cloud 产品的代码示例,请参阅 Google Cloud 示例浏览器。