
Third-Party JavaScript
Anton Kovalyov, Ben Vinegar
- Editorial
- Manning
- Año
- 2013
- Páginas
- ~288
- Nivel
- Intermedio
De qué trata
Libro de Manning escrito por Ben Vinegar y Anton Kovalyov, dos ingenieros que trabajaron en Disqus. Explica cómo crear JavaScript de terceros: scripts y widgets que una empresa distribuye para que se inserten en sitios web ajenos, como sistemas de comentarios, chats, botones sociales, herramientas de analítica o ventanas superpuestas. Se publicó en 2013, en la época de ES5, jQuery e Internet Explorer 8 y 9. Es para desarrolladores web de nivel intermedio que ya manejan JavaScript; no hace falta haber creado antes aplicaciones embebibles.
Los capítulos siguen el ciclo de vida de una aplicación embebible. Primero, cómo distribuirla y cargarla de forma asíncrona sin bloquear la página que la aloja. Después, cómo mostrar HTML y CSS sin chocar con los estilos ni las variables globales del sitio, ya sea con espacios de nombres o con iframes. Luego vienen la comunicación con el servidor a pesar de la política del mismo origen (JSONP, CORS y alternativas) y la mensajería entre iframes de distintos dominios con postMessage. Siguen la autenticación y las sesiones frente a las restricciones de las cookies de terceros, y la seguridad: XSS, CSRF, clickjacking y cómo proteger tanto al sitio que te aloja como a tu propio servicio. Los últimos capítulos tratan cómo diseñar un SDK de JavaScript para terceros, el rendimiento (peso del script, número de peticiones, carga diferida) y la depuración y las pruebas de código que corre en sitios que no controlas.
A lo largo del libro se desarrolla una aplicación embebible completa de ejemplo, con código fuente descargable, y cada técnica se aplica sobre ella. Su valor está en que trata un tema poco cubierto y lo hace desde la experiencia de servir scripts a millones de usuarios. Ten en cuenta su edad: no cubre ES Modules, Web Components ni Shadow DOM. Además, las restricciones actuales a las cookies de terceros (ITP, SameSite, el fin de las cookies de terceros en los navegadores) cambian bastante los capítulos de autenticación. Aun así, los principios de aislamiento, seguridad y rendimiento siguen vigentes, y conviene leerlo junto a documentación actual.
- Widgets embebibles
- Carga asíncrona de scripts
- Aislamiento de CSS
- Iframes
- JSONP
- CORS
- postMessage
- Cookies de terceros
- Seguridad (XSS, CSRF)
- SDK de JavaScript
- Rendimiento
- Depuración y pruebas
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Aplicación de JavaScript de terceros embebible
Widget completo que se distribuye como script y se inserta en sitios ajenos. Se va ampliando capítulo a capítulo con renderizado aislado de HTML y CSS, comunicación entre dominios con el servidor, sesiones de usuario y medidas de seguridad y rendimiento.

