Erste Schritte mit Java mit Bing Ads-API
Wichtig
Es wird empfohlen, Java 11 oder höher zu verwenden. Die unterstützte Java-Mindestversion ist 1.8. Bei Verwendung von Version 1.8 müssen Sie CXF aus Ihren Abhängigkeiten ausklammern. Sie können diese Beispieldatei mit Maven erstellen.
Um mit der Entwicklung Bing Ads API-Anwendungen mit Java zu beginnen, können Sie mit den bereitgestellten Beispielen beginnen oder eine der exemplarischen Vorgehensweisen für eine Web - oder Desktopanwendung befolgen.
Sie benötigen Benutzeranmeldeinformationen mit Zugriff auf Microsoft Advertising entweder in der Produktion oder sandbox. Für die Produktionsumgebung benötigen Sie ein Produktionsentwicklertoken. Alle Sandboxclients können das universelle Sandbox-Entwicklertoken verwenden, d. h. BBD37VB98. Weitere Informationen finden Sie unter Erste Schritte mit der Bing Ads-API und Sandbox.
Für die Authentifizierung über OAuth müssen Sie auch eine Anwendung registrieren und den entsprechenden Clientbezeichner abrufen. Sie müssen auch den geheimen Clientschlüssel und den Umleitungs-URI notieren, wenn Sie eine Webanwendung entwickeln. Weitere Informationen zum Registrieren einer Anwendung in der Produktion und zum Autorisierungscode-Genehmigungsflow finden Sie unter Authentifizierung mit OAuth und Authentifizierung mit den SDKs. Obwohl Sie in der Produktion Ihre eigene Anwendungs-ID (als Client-ID bezeichnet) verwenden müssen, können alle Microsoft Advertising-Kunden die öffentliche Client-ID "Tutorial-Beispiel-App" in der Sandbox verwenden, d. h. 00001111-aaaa-2222-bbbb-3333cccc4444. Weitere Informationen finden Sie unter Sandbox.
Das SDK installieren
Das Bing Ads Java SDK hängt von den Bibliotheken ab, die im Maven-Repository aufgeführt sind.
Wenn Sie ein Maven-Projekt erstellen und das Maven-Artefakt microsoft.bingads wie unten gezeigt einschließen, werden zusätzliche Abhängigkeiten automatisch installiert. Wenn Sie kein Maven-Projekt verwenden, müssen Sie die richtige Version jeder Abhängigkeit einschließen. Weitere Informationen finden Sie in den Beispielen Exemplarische Vorgehensweise: Bing Ads API-Webanwendung in Java oder Exemplarische Vorgehensweise: Bing Ads API-Desktopanwendung in 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>
Hinweis
Version 13.0.10 ist als Beispiel enthalten. Ausführliche Informationen zur neuesten SDK-Abhängigkeitsversion finden Sie im gitHub-README.md Bing Ads Java SDK.
Vorgehensweisen
Nachdem Sie das Bing Ads Java SDK installiert haben, können Sie entweder die Bing Ads API-Codebeispiele durchsuchen, die Beispiele von GitHub herunterladen oder eine der exemplarischen Vorgehensweisen für eine Web - oder Desktopanwendung befolgen.
Konfigurieren der Sandbox
Um die Sandboxumgebung zu verwenden, erstellen Sie eine neue Textdatei namens bingads.properties im Stammverzeichnis Des Projekts, z. B. ProjectName\src\bingads.properties , und fügen Sie den folgenden Text hinzu. Im Folgenden sind die vollständigen Inhalte der Datei bingads.properties aufgeführt . Wenn die Sandboxumgebungseinstellung falsch formatiert ist oder fehlt, ist die Standardumgebung die Produktionsumgebung.
environment=Sandbox
Sie können die Umgebung für jeden ServiceClient auch wie folgt einzeln festlegen.
CustomerService = new ServiceClient<ICustomerManagementService>(
authorizationData,
ApiEnvironment.SANDBOX,
ICustomerManagementService.class
);
Unabhängig davon, ob Sie die ServiceClient-Umgebung global oder einzeln festlegen, müssen Sie auch die OAuth-Umgebung auf Sandbox festlegen.
final OAuthDesktopMobileAuthCodeGrant oAuthDesktopMobileAuthCodeGrant = new OAuthDesktopMobileAuthCodeGrant(
ClientId,
ApiEnvironment.SANDBOX
);
Webanwendungen mit einem geheimen Clientschlüssel und einem benutzerdefinierten Umleitungs-URI sollten OAuthWebAuthCodeGrant wie folgt verwenden.
OAuthWebAuthCodeGrant oAuthWebAuthCodeGrant = new OAuthWebAuthCodeGrant(
ClientId,
ClientSecret,
new URL(RedirectUri),
ApiEnvironment.SANDBOX
);
Protokollieren Sie die Anforderungs- und Antwortheader in der Konsole. TrackingId ist in den Antwortheadern enthalten.
MessageHandler.getInstance().setTraceOn(true);
Anpassen des HTTP-Clients
Für die meisten Anwendungen empfehlen wir die Verwendung der HTTP-Standardclientimplementierung im Bing Ads Java SDK, das auf dem Apache CXF JAX-RS-Client basiert. Möglicherweise möchten Sie den HTTP-Client anpassen, um einige Features wie das Aktivieren der Komprimierung zu konfigurieren, wenn Sie eine andere JAX-RS-Implementierung verwenden, um HTTP-Timeout, Proxykonfiguration oder andere Einstellungen zu ändern.
Dazu können Sie ein benutzerdefiniertes HttpClientProvider
Objekt erstellen und an übergeben, GlobalSettings.setHttpClientProvider()
bevor Dienstaufrufe ausgeführt werden. Zum Beispiel:
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);
}
});
Protokollierungsdienstaufrufe
Um die Protokollierung für Anforderungs- und Antwortnachrichten zu aktivieren, können Sie die com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump
-Eigenschaft auf true
festlegen:
System.setProperty("com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump", "true");
Standardmäßig verwendet Bing Ads Java SDK Apache CXF, um Dienstaufrufe zu tätigen, die zum Schreiben der Protokolle auf Simple Logging Facade für Java basieren. Um protokollierte Meldungen an die Konsole auszugeben, können Sie die slf4j-simple
Implementierung Zu Ihren Anwendungsabhängigkeiten hinzufügen. Zum Beispiel:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.12</version>
</dependency>
Siehe auch
Bing Ads API-Clientbibliotheken
Bing Ads-API-Codebeispiele
Bing Ads-API-Webdienstadressen
Behandeln von Dienstfehlern und -ausnahmen
Sandbox