Saltar al contenido

Los protocolos, por dentro

Cómo se intercepta un esquema propio en cada motor, por qué la forma de las URL difiere entre sistemas, y qué implica para tu código.

Cómo se intercepta

Y la fila del medio es la que explica la mitad de las sorpresas del nivel 10.1: el origen de tu página no tiene la misma forma en las tres plataformas porque el mecanismo de interceptación no es el mismo.

Por qué eso importa

Y lo que ya viste desde arriba, ahora con la causa:

Las cuatro se explican con la misma causa, y por eso el nivel 48.1 recomendaba mover la red al core: el core no tiene origen y no le afecta nada de esto.

Escribir un manejador que funcione en los tres

Y lo práctico, para el esquema propio del nivel 31.2:

  • No supongas la forma de la URL. Extrae lo que necesitas con un analizador, no partiendo cadenas — y ten en cuenta que puede venir como esquema o como dominio.
  • Devuelve las cabeceras correctas, incluido el tipo de contenido, o el motor no sabe qué hacer con lo que le das.
  • Y ten en cuenta el origen al declararlo en la política de contenido: es lo que el nivel 31.2 avisaba de que se olvida.

Y una advertencia de rendimiento: el manejador se ejecuta por cada petición, incluidas las de recursos que el motor pide en paralelo. Nivel 31.2: rápido o con caché.

Lo que se puede hacer con esto

Y las tres cosas que un esquema propio permite y que merecen conocerse:

  • Servir contenido generado sin pasar por el puente. Nivel 31.2.
  • Servir con lógica: comprobar, decidir, cachear.
  • Y servir en flujo, para contenido grande —vídeo, ficheros— que el motor puede consumir por partes sin cargarlo entero. Nivel 40.3.

El tercero es el que más gente desconoce y el que resuelve mejor el caso de mostrar ficheros grandes: el motor pide trozos y tú los sirves, sin que nada pase por memoria entera ni por el puente.