2009-11-16 11 views
6

Solo por curiosidad, me pregunto cómo hace Gmail lo que hace. Después de buscar en el origen de la página, no ve ningún enlace, métodos onclick y javascript. Entiendo que ocultan el javascript, pero aun así la página sabe que hubo un clic. ¿Hay un hilo de daemon ejecutándose que escuche tus clics? ¿¿Como funciona??¿Cómo funciona gmail bajo el capó?

Respuesta

5

un poco viejo ahora, pero aquí hay un tipo de artículo de explicar Gmail bajo el capó: http://johnvey.com/features/gmailapi/ (véase la sección "Acerca del motor de Gmail y el protocolo")

El elemento más relevante para este proyecto es lo que yo consulte el "Paquete de datos", , un archivo HTML base que contiene solo declaraciones de matriz de JavaScript que el motor de UI analiza y luego usa para determinar qué actualizar. Las ventajas de este deben ser inmediatamente obvias: reducción de la carga de tráfico , y una mayor funcionalidad - especialmente para los desarrolladores que no ya tienen que recurrir al crudo “pantalla raspado” técnicas para interactuar con aplicaciones web. Aunque la situación ideal para desarrolladores externos sería un DataPack basado en XML, la versión de JavaScript es suficiente (y sospecho que también se eligió para los motivos de rendimiento ).

El formato del paquete de datos consiste en matrices individuales "DataItems" o JavaScript envueltas en una función de envolvente. Un ejemplo:

D(["ts",0,50,106,0,"Inbox","fd36721220",154]);

entrada de Wikipedia es bastante bueno en un breve resumen también: http://en.wikipedia.org/wiki/Gmail_interface

+0

el primer enlace está muerto. ..no pensé en wikipedia ... pero es un poco superficial ... – Guy

+0

Y aquí tenemos el problema de linkrot y confiar en un sitio externo para la mayor parte de una respuesta. – random

+0

en realidad, el enlace normal funciona, solo lo actualizó –

Cuestiones relacionadas