Bibliothèques clientes CTS

Cette page explique comment débuter avec les bibliothèques clientes Cloud pour l'API Cloud Talent Solution. Les bibliothèques clientes facilitent l'accès aux Google Cloud APIà l'aide d'un langage compatible. Bien que vous puissiez utiliser directement les APIGoogle Cloud en envoyant des requêtes brutes au serveur, les bibliothèques clientes vous simplifient la tâche en réduisent considérablement la quantité de code à écrire.

Pour en savoir plus sur les bibliothèques clientes Cloud et les anciennes bibliothèques clientes pour les API Google, consultez Présentation des bibliothèques clientes.

De nouvelles bibliothèques clientes pour d'autres langages seront bientôt disponibles.

Installer la bibliothèque cliente

C++

Pour en savoir plus sur les exigences de cette bibliothèque cliente et installer des dépendances, consultez la page Configurer un environnement de développement C++.

C#

Si vous utilisez Visual Studio 2017 ou une version ultérieure, ouvrez la fenêtre du gestionnaire de paquets NuGet et saisissez les éléments suivants :

Install-Package Google.Apis

Si vous utilisez les outils d'interface de ligne de commande .NET Core pour installer vos dépendances, exécutez la commande suivante :

dotnet add package Google.Apis

Pour en savoir plus, consultez la page Configurer un environnement de développement C#.

Go

go get cloud.google.com/go/talent/apiv4

Pour plus d'informations, consultez la page Configurer un environnement de développement Go.

Java

Si vous utilisez Maven, ajoutez les lignes suivantes à votre pom.xml fichier. Pour en savoir plus sur les BOM, consultez la page The Google Cloud Platform Libraries BOM (BOM des bibliothèques Google Cloud Platform).

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>libraries-bom</artifactId>
      <version>26.80.0</version>
      <type>pom</type>
      <scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

<dependencies>
  <dependency>
    <groupId>com.google.cloud</groupId>
    <artifactId>google-cloud-talent</artifactId>
  </dependency>
</dependencies>

Si vous utilisez Gradle, ajoutez les éléments suivants à vos dépendances :

implementation 'com.google.cloud:google-cloud-talent:2.92.0'

Si vous utilisez sbt, ajoutez les éléments suivants à vos dépendances :

libraryDependencies += "com.google.cloud" % "google-cloud-talent" % "2.92.0"

Si vous utilisez Visual Studio Code ou IntelliJ, vous pouvez ajouter des bibliothèques clientes à votre projet à l'aide des plug-ins IDE suivants :

Les plug-ins offrent des fonctionnalités supplémentaires, telles que la gestion des clés pour les comptes de service. Reportez-vous à la documentation de chaque plug-in pour plus de détails.

Pour en savoir plus, consultez la page Configurer un environnement de développement Java.

Node.js

npm install @google-cloud/talent

Pour en savoir plus, consultez la section Configurer un environnement de développement Node.js.

PHP

composer require google/apiclient

Pour en savoir plus, consultez la page Utiliser PHP sur Google Cloud.

Python

pip install --upgrade google-api-python-client

Pour en savoir plus, consultez la page Configurer un environnement de développement Python.

Ruby

gem install google-api-client

Pour en savoir plus, consultez la section Configurer un environnement de développement Ruby.

Configurer l'authentification

Pour authentifier les appels aux API Google Cloud , les bibliothèques clientes utilisent le service Identifiants par défaut de l'application (ADC). Les bibliothèques recherchent des identifiants dans un ensemble d'emplacements définis et les utilisent pour authentifier les requêtes adressées à l'API. Grâce à ADC, vous pouvez mettre des identifiants à disposition de votre application dans divers environnements, tels que l'environnement de développement ou de production local, sans avoir à modifier le code de votre application.

Pour les environnements de production, la façon de configurer ADC dépend du service et du contexte. Pour en savoir plus, consultez Configurer le service Identifiants par défaut de l'application.

Pour un environnement de développement local, vous pouvez configurer ADC avec les identifiants associés à votre compte Google :

  1. Installez la Google Cloud CLI. Une fois que la Google Cloud CLI est installée, initialisezla en exécutant la commande suivante :

    gcloud init

    Si vous utilisez un fournisseur d'identité (IdP) externe, vous devez d'abord vous connecter à la gcloud CLI avec votre identité fédérée.

  2. Si vous utilisez un shell local, créez des identifiants d'authentification locaux pour votre compte utilisateur :

    gcloud auth application-default login

    Vous n'avez pas besoin de le faire si vous utilisez Cloud Shell.

    Si une erreur d'authentification est renvoyée et que vous utilisez un fournisseur d'identité (IdP) externe, vérifiez que vous vous êtes connecté à la gcloud CLI avec votre identité fédérée.

    Un écran de connexion s'affiche. Une fois que vous êtes connecté, vos identifiants sont stockés dans le fichier d'identifiants local utilisé par ADC.

Utiliser la bibliothèque cliente

L'exemple suivant vous montre comment utiliser la bibliothèque cliente.

C++


#include "google/cloud/talent/v4/company_client.h"
#include "google/cloud/project.h"
#include <iostream>

int main(int argc, char* argv[]) try {
  if (argc != 2) {
    std::cerr << "Usage: " << argv[0] << " project-id\n";
    return 1;
  }

  namespace talent = ::google::cloud::talent_v4;
  auto client =
      talent::CompanyServiceClient(talent::MakeCompanyServiceConnection());

  auto const project = google::cloud::Project(argv[1]);
  for (auto c : client.ListCompanies(project.FullName())) {
    if (!c) throw std::move(c).status();
    std::cout << c->DebugString() << "\n";
  }

  return 0;
} catch (google::cloud::Status const& status) {
  std::cerr << "google::cloud::Status thrown: " << status << "\n";
  return 1;
}

Go

import (
	"context"
	"fmt"
	"os"

	talent "cloud.google.com/go/talent/apiv4beta1"
	"cloud.google.com/go/talent/apiv4beta1/talentpb"
	"google.golang.org/api/iterator"
)

func main() {
	projectID := os.Getenv("GOOGLE_CLOUD_PROJECT")

	// Initialize job search client.
	ctx := context.Background()
	c, err := talent.NewCompanyClient(ctx)
	if err != nil {
		fmt.Printf("talent.NewCompanyClient: %v", err)
		return
	}
	defer c.Close()

	// Construct a listCompany request.
	req := &talentpb.ListCompaniesRequest{
		Parent: "projects/" + projectID,
	}

	it := c.ListCompanies(ctx, req)

	for {
		resp, err := it.Next()
		if err == iterator.Done {
			fmt.Printf("Done.\n")
			break
		}
		if err != nil {
			fmt.Printf("it.Next: %v", err)
			return
		}
		fmt.Printf("Company: %v\n", resp.GetName())
	}
}

Java


import com.google.cloud.talent.v4.Company;
import com.google.cloud.talent.v4.CompanyServiceClient;
import com.google.cloud.talent.v4.ListCompaniesRequest;
import com.google.cloud.talent.v4.TenantName;
import java.io.IOException;

public class JobSearchListCompanies {

  public static void listCompanies() throws IOException {
    // TODO(developer): Replace these variables before running the sample.
    String projectId = "your-project-id";
    String tenantId = "your-tenant-id";
    listCompanies(projectId, tenantId);
  }

  // List Companies.
  public static void listCompanies(String projectId, String tenantId) throws IOException {
    // Initialize client that will be used to send requests. This client only needs to be created
    // once, and can be reused for multiple requests. After completing all of your requests, call
    // the "close" method on the client to safely clean up any remaining background resources.
    try (CompanyServiceClient companyServiceClient = CompanyServiceClient.create()) {
      TenantName parent = TenantName.of(projectId, tenantId);

      ListCompaniesRequest request =
          ListCompaniesRequest.newBuilder().setParent(parent.toString()).build();

      for (Company responseItem : companyServiceClient.listCompanies(request).iterateAll()) {
        System.out.format("Company Name: %s%n", responseItem.getName());
        System.out.format("Display Name: %s%n", responseItem.getDisplayName());
        System.out.format("External ID: %s%n", responseItem.getExternalId());
      }
    }
  }
}

Node.js


const talent = require('@google-cloud/talent').v4;

/**
 * List Companies
 *
 * @param projectId {string} Your Google Cloud Project ID
 * @param tenantId {string} Identifier of the Tenant
 */
function sampleListCompanies(projectId, tenantId) {
  const client = new talent.CompanyServiceClient();
  // Iterate over all elements.
  // const projectId = 'Your Google Cloud Project ID';
  // const tenantId = 'Your Tenant ID (using tenancy is optional)';
  const formattedParent = client.tenantPath(projectId, tenantId);

  client
    .listCompanies({parent: formattedParent})
    .then(responses => {
      const resources = responses[0];
      for (const resource of resources) {
        console.log(`Company Name: ${resource.name}`);
        console.log(`Display Name: ${resource.displayName}`);
        console.log(`External ID: ${resource.externalId}`);
      }
    })
    .catch(err => {
      console.error(err);
    });
}

Autres ressources

C++

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour C++ :

C#

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour C# :

Go

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour Go :

Java

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour Java :

Node.js

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour Node.js :

PHP

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour PHP :

Python

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour Python :

Ruby

La liste suivante contient des liens vers d'autres ressources liées à la bibliothèque cliente pour Ruby :