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 aplicaciones de API de Bing Ads 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 y elespacio aislado de Bing Ads.

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, 4c0b021c-00c3-4508-838f-d3127e8167ff. Para obtener más información, consulte Espacio aislado.

Instalar el SDK

El SDK de Java de 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: Aplicación web de API de Bing Ads en Java o Tutorial: Aplicación de escritorio de la API de Bing Ads 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 el README.md de GitHub del SDK de Java de Bing Ads.

Tutoriales

Una vez instalado el SDK de Java de 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 el SDK de Java de Bing Ads, 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, el SDK de Java de Bing Ads usa Apache CXF para realizar llamadas de servicio, que se basa en la fachada de registro simple 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 de cliente de api de Bing Ads
Ejemplos de código de api de Bing Ads
Direcciones del servicio web de la API de Bing Ads
Control de errores y excepciones del servicio
Espacio aislado