ajax - funcion - ¿Por qué Twitter usa un hash y un signo de exclamación en las URL, y cómo reescriben las URL de búsqueda?
javascript md5 encrypt (3)
Entendemos que el hash es para búsquedas AJAX, ¿pero el signo de exclamación? ¿Nadie sabe?
Además, el atributo de "acción" para su formulario de búsqueda apunta a "/ búsqueda", pero cuando realiza una búsqueda, el signo de exclamación de hash aparece en la URL. ¿Están simplemente redirigiendo desde "/ search" a "/ #! / Search"?
Nota: la segunda parte de la q permanece sin respuesta: es decir, ¿están redirigiendo al usuario desde "/ search" a "/ #! / Search", o envían al usuario a "/ search" y usan JS en la página reescribir la URL? - Crashalot, 26 de enero a las 23:51
¡Gracias!
Para responder a la segunda parte, ¡te está redirigiendo a / #! / Search.
Si mira los encabezados de respuesta cuando va a http://twitter.com/britishdev (plug plug), se le devuelve un 302 (redireccionamiento temporal) con el encabezado Location configurado como "Location: http://twitter.com/#!/britishdev "
Sí, JavaScript está extrayendo todos sus detalles en la página de destino, pero independientemente de eso es donde se le redirecciona.
Sí, redirige con HTTP 302.
Por cierto, "!" se usa para eliminar el caso con un hash vacío. "http: // url #" hará que un navegador se deslice hacia arriba.
Se ha convertido en el estándar de facto que Google ha establecido para garantizar la coherencia y hacer que las URL ajax puedan rastrearse.
Ver http://code.google.com/web/ajaxcrawling/docs/getting-started.html
Creo que están usando history.pushState
. Puede hacer history.back()
en la consola y lo llevará de regreso a la página.