Tecnología

Inicio

Cómo escribir un script Ajax RSS

Asynchronous JavaScript y XML, AJAX, es una técnica que utiliza varias tecnologías de Internet para desarrollar aplicaciones web interactivas del lado del cliente. JavaScript se utiliza para leer un archivo XML, y mostrar el contenido formateado en la página web utilizando HTML dinámico (DHTML) y Document Object Model (DOM). Really Simple Syndication (RSS) son archivos con formato XML que contienen información y enlaces de noticias, blogs, e incluso información de podcast. Ir a buscar y mostrar una fuente RSS es una gran manera de empezar a trabajar con AJAX.

Instrucciones

1 Crear un nuevo archivo JavaScript. Guárdelo con el nombre de archivo "rss.js".

2 Agregue la siguiente función. La función intializes y devuelve un objeto XMLHttpRequest. XMLHttpRequest es el núcleo de la programación AJAX. Las versiones anteriores de Internet Explorer inicializar un XMLHttpRequest usando un ActiveX en lugar de la ventana.

function initXmlHttpReq() {
var x ;
if (window.XMLHttpRequest) {
x = new XMLHttpRequest();
}
else if (window.ActiveXObject) {
x = new ActiveXObject("Microsoft.XMLHTTP");
}
else {
alert("Your browser does not support this feature.");
return ;
}

x regresar;
}

3 Agregue la siguiente función para gestionar la acción de análisis y visualización de la fuente RSS cuando el archivo se descargue. readyState indica el estado del archivo de búsqueda, y es igual a 4 cuando el archivo se fue a buscar con éxito. El documento tendrá una etiqueta DIV con el id "RSS". El guión se escribe la RSS en DIV.

function stateChange() {
if (xmlreq.readyState==4) {
var data = xmlreq.responseXML;
var elem = document.getElementById("rss");
parseRss(data, elem);
}
}

4 Añadir las siguientes dos funciones para analizar y escribir los datos RSS almacenados en el objeto de datos. Cada titular de RSS está contenida en el elemento "elemento", que contiene el título, enlace, y otra información de elementos secundarios. parseRss construye una lista desordenada, la rellena con la información de la fuente RSS, y lo escribe en un div con el id "RSS" en la página web utilizando la secuencia de comandos. GETVAL se utiliza para extraer datos de los nodos secundarios, y mantiene los parseRss funcionan un poco más limpio y fácil de leer.

function parseRss(data, elem) {
elem.innerHTML = "<h2>Feed<h2>";
var items = data.getElementsByTagName("item");
var list = document.createElement("ul");
for (var i = 0 ; i < items.length ; i++) {
var listItem = document.createElement("li");
var linkItem = document.createElement("a");
linkItem.setAttribute("href", getVal(items[i],"link"));
linkItem.appendChild(document.createTextNode(getVal(items[i],"title")));
listItem.appendChild(linkItem);
list.appendChild(listItem);
}
elem.appendChild(list);
}

función GETVAL (obj, etiqueta) {
volver obj.getElementsByTagName (etiqueta) [0] .firstChild.nodeValue;
}

5 Añadir la siguiente función que abre el canal RSS, lo que provocó el análisis y la escritura de los contenidos de la página web.

function makeRequest () {
xmlreq.open("GET", url, true);
xmlreq.send(null);
}

6 Añadir las siguientes líneas al final de la secuencia de comandos. Estas líneas se ejecutará cuando se carga la página. Cambiar la dirección URL "rss.xml" a la URL de su feed RSS.

var xmlreq = initXmlHttpReq();
var url = "rss.xml" ;
xmlreq.onreadystatechange=stateChange;

7 Utilice la secuencia de comandos mediante la inclusión de la secuencia de comandos en la zona de la cabeza de su página web:
<Script type = "text / javascript" al atributo onload de la etiqueta BODY:

<Body onload = "makeRequest ();">

Consejos y advertencias

  • Personalizar el formato al modificar la función parseRSS o la creación de un estilo en el archivo CSS para "div.rss", "div.rss ul", y "div.rss li ul". Actualización de la RSS de forma automática mediante la creación de un evento de temporizador en su JavaScript para llamar a la función makeRequest cada pocos minutos. Crear un teletipo que muestra un titular a la vez mediante la modificación del bucle for de parseRSS que esperar unos segundos antes de cambiar el contenido del DIV con el siguiente titular de la lista.
  • AJAX sólo puede ser utilizado para recuperar los archivos XML de servidores en su propio dominio de red. Para utilizar las fuentes RSS externas, utilizar un planificador del lado del servidor en busca de copias en el servidor Web o una aplicación web en el servidor se ha podido recuperar y entregar los alimentos a su script AJAX. También ver el: link "MDC HTTP de control de acceso" en las referencias para obtener información adicional sobre cómo implementar las solicitudes HTTP entre sitios.