Prise en main de Java avec l’API Bing Ads
Importante
Nous vous recommandons d’utiliser Java 11 ou version ultérieure. La version minimale de Java que nous prenons en charge est 1.8. Vous devez exclure CXF de vos dépendances lors de l’utilisation de la version 1.8. Vous pouvez générer cet exemple de fichier avec Maven.
Pour commencer à développer des applications API Bing Ads avec Java, vous pouvez commencer avec les exemples fournis ou suivre l’une des procédures pas à pas pour une application web ou de bureau .
Vous aurez besoin d’informations d’identification utilisateur ayant accès à Microsoft Advertising en production ou en bac à sable. Pour l’environnement de production, vous aurez besoin d’un jeton de développeur de production. Tous les clients de bac à sable peuvent utiliser le jeton de développeur de bac à sable universel, c’est-à-dire BBD37VB98. Pour plus d’informations, consultez Prise en main de l’API et du bac à sable Bing Ads.
Pour vous authentifier via OAuth, vous devez également inscrire une application et obtenir l’identificateur client correspondant. Vous devez également prendre note de la clé secrète client et de l’URI de redirection si vous développez une application web. Pour plus d’informations sur l’inscription d’une application en production et sur le flux d’octroi du code d’autorisation, consultez Authentification avec OAuth et Authentification avec les KITS de développement logiciel (SDK). Bien qu’en production, vous devez utiliser votre propre ID d’application (également nommé ID client), tous les clients Microsoft Advertising peuvent utiliser l’ID client public « Exemple d’application tutoriel » dans le bac à sable, c’est-à-dire 00001111-aaaa-2222-bbbb-3333cccc4444. Pour plus d’informations, consultez Bac à sable.
Installer le kit de développement logiciel (SDK)
La Bing Ads sdk Java dépend des bibliothèques répertoriées dans le référentiel Maven.
Lorsque vous créez un projet Maven et incluez l’artefact Maven microsoft.bingads comme indiqué ci-dessous, des dépendances supplémentaires sont installées automatiquement. Si vous n’utilisez pas de projet Maven, vous devez inclure la version correcte de chaque dépendance. Pour plus d’informations, consultez les exemples Procédure pas à pas : application web API Bing Ads en Java ou Procédure pas à pas : application de bureau API Bing Ads dans Java .
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
...
<dependencies>
<dependency>
<groupId>com.microsoft.bingads</groupId>
<artifactId>microsoft.bingads</artifactId>
<version>13.0.10</version>
</dependency>
</dependencies>
</project>
Remarque
La version 13.0.10 est incluse à titre d’exemple. Pour plus d’informations sur la dernière version de dépendance du SDK, consultez le README.md GitHub du KIT de développement logiciel (SDK) Java Bing Ads.
Procédures pas à pas
Une fois que vous avez installé l’Bing Ads sdk Java, vous pouvez parcourir les exemples de code d’API Bing Ads, télécharger les exemples à partir de GitHub ou suivre l’une des procédures pas à pas d’une application web ou de bureau .
Configuration du bac à sable
Pour utiliser l’environnement sandbox , créez un fichier texte nommé bingads.properties dans le répertoire racine source de votre projet, par exemple Nom_projet\src\bingads.properties , puis ajoutez le texte suivant. Voici le contenu complet du fichier bingads.properties . Si le paramètre d’environnement de bac à sable est incorrect ou manquant, l’environnement par défaut est de production.
environment=Sandbox
Vous pouvez également définir l’environnement pour chaque ServiceClient individuellement comme suit.
CustomerService = new ServiceClient<ICustomerManagementService>(
authorizationData,
ApiEnvironment.SANDBOX,
ICustomerManagementService.class
);
Que vous définissiez l’environnement ServiceClient globalement ou individuellement, vous devez également définir l’environnement OAuth sur bac à sable.
final OAuthDesktopMobileAuthCodeGrant oAuthDesktopMobileAuthCodeGrant = new OAuthDesktopMobileAuthCodeGrant(
ClientId,
ApiEnvironment.SANDBOX
);
Les applications web avec une clé secrète client et un URI de redirection personnalisé doivent utiliser OAuthWebAuthCodeGrant comme suit.
OAuthWebAuthCodeGrant oAuthWebAuthCodeGrant = new OAuthWebAuthCodeGrant(
ClientId,
ClientSecret,
new URL(RedirectUri),
ApiEnvironment.SANDBOX
);
Journaliser les en-têtes de demande et de réponse dans la console. TrackingId est inclus dans les en-têtes de réponse.
MessageHandler.getInstance().setTraceOn(true);
Personnalisation du client HTTP
Pour la plupart des applications, nous vous recommandons d’utiliser l’implémentation du client HTTP par défaut dans le kit de développement logiciel (SDK) Java Bing Ads, qui s’appuie sur le client Apache CXF JAX-RS. Vous pouvez personnaliser le client HTTP pour configurer certaines fonctionnalités, telles que l’activation de la compression si vous utilisez une implémentation JAX-RS différente, pour modifier le délai d’expiration HTTP, la configuration du proxy ou d’autres paramètres.
Pour ce faire, vous pouvez créer un objet personnalisé HttpClientProvider
et le passer à GlobalSettings.setHttpClientProvider()
avant d’effectuer des appels de service. Par exemple :
GlobalSettings.setHttpClientProvider(new HttpClientProvider()
{
@Override
protected ClientBuilder configureClientBuilder(ClientBuilder clientBuilder) {
return super.configureClientBuilder(clientBuilder)
// override default connect timeout
.connectTimeout(90, TimeUnit.SECONDS)
// override default read timeout
.readTimeout(5, TimeUnit.MINUTES)
// enable compression (if using Jersey client)
.register(org.glassfish.jersey.message.GZipEncoder.class)
.register(org.glassfish.jersey.client.filter.EncodingFilter.class);
}
});
Journalisation des appels de service
Pour activer la journalisation des messages de demande et de réponse, vous pouvez définir la propriété sur com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump
true
:
System.setProperty("com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump", "true");
Par défaut, Bing Ads KIT de développement logiciel (SDK) Java utilise Apache CXF pour effectuer des appels de service, qui s’appuie sur la façade de journalisation simple pour Java pour écrire ses journaux. Pour générer des messages journalisés dans la console, vous pouvez ajouter l’implémentation slf4j-simple
à vos dépendances d’application. Par exemple :
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.12</version>
</dependency>
Voir aussi
Bibliothèques clientes d’API Bing Ads
Exemples de code d’API Bing Ads
Adresses du service web de l’API Bing Ads
Gestion des erreurs et des exceptions de service
Bac à sable