Trabajar con cookies

Puede utilizar TVSDK para enviar datos arbitrarios en encabezados de cookie para la administración de sesiones, el acceso a la puerta, etc.

A continuación, se muestra un ejemplo de solicitud al servidor de claves con cierta autenticación:

  1. El cliente inicia sesión en el sitio web en un explorador y su inicio de sesión muestra que este cliente puede ver el contenido.

  2. En función de lo que espera el servidor de licencias, la aplicación genera un token de autenticación.

    Este valor se pasa a TVSDK.

  3. TVSDK establece este valor en el encabezado de la cookie.

  4. Cuando TVSDK realiza una solicitud al servidor de claves para obtener una clave para descifrar el contenido, la solicitud contiene el valor de autenticación en el encabezado de la cookie.

    El servidor de claves sabe que la solicitud es válida.

Para trabajar con cookies:

  1. Cree un cookieManager y agregue las cookies para los URI a su cookieStore.

    Por ejemplo:

    CookieManager cookieManager=new CookieManager(); 
    CookieHandler.setDefault(cookieManager);  
    HttpCookie cookie=new HttpCookie("lang","fr"); 
    cookie.setDomain("twitter.com");  
    cookie.setPath("/"); 
    cookie.setVersion(0); 
    cookieManager.getCookieStore().add(newURI("https://twitter.com/"),cookie);
    
    CONSEJO

    Cuando se habilita el redireccionamiento 302, la solicitud de publicidad puede redirigirse a un dominio diferente del dominio al que pertenece la cookie.

    TVSDK consulta esto cookieManager durante la ejecución, comprueba si hay cookies asociadas con la dirección URL y las utiliza automáticamente.

    Si es necesario actualizar las cookies en la aplicación durante la reproducción, no utilice la API networkConfiguration.setCookieHeaders , ya que la actualización se producirá en el almacén de cookies de JAVA.

    networkConfiguration.setCookieHeaders La API establece las cookies en C++ CookieStore de TVSDK.

    Cuando utilice cookies JAVA y las comparta entre Application y TVSDK, utilice JAVA CookieStore para administrar las cookies únicamente.

    Antes de inicializar la reproducción, establezca las cookies en CookieStore mediante el Administrador de cookies, tal como se ha indicado anteriormente.

    TVSDK recogerá automáticamente la cookie almacenada en CookieStore.

    Si es necesario actualizar un valor de cookie más adelante durante la reproducción, llame al mismo método add de CookieStore con la misma clave y un nuevo campo de valor.

    También se configura
    networkConfiguration.setReadSetCookieHeader(false) antes de llamar a
    config.setNetworkConfiguration(networkConfiguration)

    NOTA

    Después de establecer 'setReadSetCookieHeader' en false, establezca las cookies para las solicitudes clave mediante el administrador de cookies JAVA.

    onCookiesUpdated(CookiesUpdatedEvent cookiesUpdatedEvent)
    Esta API de rellamada se activará cada vez que haya una actualización en las cookies C++ (cookies que provienen de la respuesta http). La aplicación necesita escuchar esta llamada de retorno y puede actualizar su JAVA CookieStore en consecuencia para que sus llamadas de red en JAVA puedan utilizar las cookies como se muestra a continuación:

    private final CookiesUpdatedEventListener cookiesUpdatedEventListener = new CookiesUpdatedEventListener() {
    @Override
    public void onCookiesUpdated(CookiesUpdatedEvent cookiesUpdatedEvent) {
    List<HttpCookie> cookies = cookiesUpdatedEvent.getHttpCookies();
    for(int i = 0; i < cookies.size(); i++)
    { HttpCookie c = cookies.get(i); // To set this cookie on to the cookie store //c.setValue("newValue"); //If you want to modify the value of the cookie URI myuri = URI.create(cookiesUpdatedEvent.getDomainString()); cookieManager.getCookieStore().add(myuri,c); }
    }
    }
    

En esta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now