Compartir a través de


Introducción al uso de Java con Bing Ads API

Importante

Se recomienda usar Java 11 o posterior. La versión mínima de Java que se admite es la 1.8. Debe eliminar CXF de las dependencias cuando use la versión 1.8. Puede compilar este archivo de ejemplo con Maven.

Para empezar a desarrollar Bing Ads aplicaciones de API con Java, puede empezar con los ejemplos proporcionados o seguir uno de los tutoriales de aplicación para una aplicación web o de escritorio .

Necesitará credenciales de usuario con acceso a Microsoft Advertising en producción o espacio aislado. Para el entorno de producción, necesitará un token de desarrollador de producción. Todos los clientes de espacio aislado pueden usar el token de desarrollador de espacio aislado universal, es decir, BBD37VB98. Para obtener más información, consulte Introducción a la API de Bing Ads y el espacio aislado.

Para autenticarse a través de OAuth, también debe registrar una aplicación y obtener el identificador de cliente correspondiente. También debe tomar nota del secreto de cliente y el URI de redirección si está desarrollando una aplicación web. Para obtener más información sobre cómo registrar una aplicación en producción y el flujo de concesión de código de autorización, consulte Autenticación con OAuth y Autenticación con los SDK. Aunque en producción debe usar su propio identificador de aplicación (por ejemplo, el identificador de cliente), todos los clientes de Microsoft Advertising pueden usar el identificador de cliente público "Aplicación de ejemplo de tutorial" en el espacio aislado, es decir, 00001111-aaaa-2222-bbbb-3333cccc4444. Para obtener más información, consulte Espacio aislado.

Instalar el SDK

El SDK de Java Bing Ads depende de las bibliotecas enumeradas en el repositorio de Maven.

Al crear un proyecto de Maven e incluir el artefacto de Maven microsoft.bingads como se muestra a continuación, las dependencias adicionales se instalan automáticamente. Si no usa un proyecto de Maven, debe incluir la versión correcta de cada dependencia. Para obtener más información, consulte los ejemplos Tutorial: Bing Ads aplicación web de API en Java o Tutorial: Bing Ads aplicación de escritorio de API en 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>

Nota:

La versión 13.0.10 se incluye como ejemplo. Para obtener más información sobre la versión de dependencia del SDK más reciente, consulte Bing Ads README.md de GitHub del SDK de Java.

Tutoriales

Una vez instalado el SDK de Java Bing Ads, puede examinar los ejemplos de código de API de Bing Ads, descargar los ejemplos de GitHub o seguir uno de los tutoriales de aplicación para una aplicación web o de escritorio .

Configuración del espacio aislado

Para usar el entorno de espacio aislado , cree un nuevo archivo de texto denominado bingads.properties en el directorio raíz de origen del proyecto, por ejemplo , ProjectName\src\bingads.properties y agregue el texto siguiente. A continuación se incluye el contenido completo del archivo bingads.properties . Si la configuración del entorno de espacio aislado tiene un formato incorrecto o falta, el entorno predeterminado es producción.

environment=Sandbox

También puede establecer el entorno para cada ServiceClient individualmente de la siguiente manera.

CustomerService = new ServiceClient<ICustomerManagementService>(
    authorizationData,
    ApiEnvironment.SANDBOX,
    ICustomerManagementService.class
);

Tanto si establece el entorno ServiceClient globalmente como individualmente, por separado también tendrá que establecer el entorno de OAuth en espacio aislado.

final OAuthDesktopMobileAuthCodeGrant oAuthDesktopMobileAuthCodeGrant = new OAuthDesktopMobileAuthCodeGrant(
    ClientId, 
    ApiEnvironment.SANDBOX
);

Las aplicaciones web con un secreto de cliente y un URI de redireccionamiento personalizado deben usar OAuthWebAuthCodeGrant como se indica a continuación.

OAuthWebAuthCodeGrant oAuthWebAuthCodeGrant = new OAuthWebAuthCodeGrant(
    ClientId, 
    ClientSecret, 
    new URL(RedirectUri),
    ApiEnvironment.SANDBOX
);

Registre los encabezados de solicitud y respuesta en la consola. TrackingId se incluye en los encabezados de respuesta.

MessageHandler.getInstance().setTraceOn(true);

Personalización del cliente HTTP

Para la mayoría de las aplicaciones, se recomienda usar la implementación de cliente HTTP predeterminada en Bing Ads SDK de Java, que se basa en el cliente JAX-RS de Apache CXF. Es posible que desee personalizar el cliente HTTP para configurar algunas características, como habilitar la compresión si usa una implementación de JAX-RS diferente, para cambiar el tiempo de espera HTTP, la configuración del proxy u otra configuración.

Para ello, puede crear un objeto personalizado HttpClientProvider y pasarlo a antes de realizar llamadas de GlobalSettings.setHttpClientProvider() servicio. Por ejemplo:

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);
    }
}); 

Registro de llamadas de servicio

Para habilitar el registro para los mensajes de solicitud y respuesta, puede establecer la com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump propiedad en true:

System.setProperty("com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump", "true");

De forma predeterminada, Bing Ads SDK de Java usa Apache CXF para realizar llamadas de servicio, que se basa en simple logging facade para Java para escribir sus registros. Para generar mensajes registrados en la consola, puede agregar la slf4j-simple implementación a las dependencias de la aplicación. Por ejemplo:

<dependency> 
    <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-simple</artifactId> 
    <version>2.0.12</version> 
</dependency> 

Consulta también

Bibliotecas cliente de API de Bing Ads
Ejemplos de código de API de Bing Ads
direcciones de servicio web de api de Bing Ads
Control de errores y excepciones del servicio
Espacio aislado