2011-05-22 21 views
5

Tengo información de que las salidas de Shoutcast son un archivo html.HTML/Javascript - Obtener texto del archivo en línea

El archivo html se ve así: http://216.118.106.247:443/7.html.

¿Hay alguna manera de obtener el último elemento de esa lista/matriz en Javascript como una cadena?

Quiero dar salida a la información de la canción en un archivo html, supongo que una vez que lo reciba en JS como una cadena que puedo usar la función document.write() para dar salida al código ...

Gracias!

+0

¿Tiene PHP instalado? Puedes usar PHP, mucho más fácil. –

+0

Si no raspa el archivo en el lado del servidor, no creo que pueda manipular el contenido de nada fuera de su dominio a través de javascript (a menos que haya un servicio web que proporcione los datos que necesita y que puede llamar en tu código). –

+0

Usando esto como parte de una extensión de Google Chrome, entonces no puedo usar PHP ... – IsaacL

Respuesta

1

Eche un vistazo a XMLHttpRequest también conocido como solicitudes de Ajax.

Hay un montón de bibliotecas que hacen que "Ajax" sea fácil. Prueba con esto:

http://www.prototypejs.org/api/ajax/request

hay limitaciones con lo que se puede recuperar usando ajax. Debido a problemas de seguridad, su navegador no permitirá que javascript se ejecute en yourwebsite.com para realizar solicitudes ajax a mywebsite.com.

Busque secuencias de comandos cross site.

1

Existen varios métodos para su uso. Pero asegúrese de que los archivos estén en el mismo servidor o carpeta.

El uso de XMLHttpRequest: http://www.javascripter.net/faq/xmlhttpr.htm

Usando FileSystemObject: http://msdn.microsoft.com/en-us/library/czxefwt8(v=VS.85).aspx

El uso de un "ayudante" applet de Java que lee un archivo o URL de su script

var fileContent=''; 
var theLocation=''; 

function readFileViaApplet(n) { 
document.f1.t1.value='Reading in progress...'; 
document.ReadURL.readFile(theLocation); 
setTimeout("showFileContent()",100); 
} 

function showFileContent() { 
if (document.ReadURL.finished==0) { 
    setTimeout("showFileContent()",100); 
    return; 
} 
fileContent=document.ReadURL.fileContent; 
document.form1.textarea1.value=fileContent; 
} 

alguna otra fuente de referencia: http://www.c-point.com/JavaScript/articles/file_access_with_JavaScript.htm (muchos ejemplos).

+0

¿Esto funcionará si el archivo está en otro servidor? ¿Y cómo puedo agregar esto en mi archivo html? – IsaacL

+0

Javascript no puede interactuar en el lado del servidor :) Por lo tanto, debe usar PHP. Solo funciona con archivos en el mismo servidor o carpeta. –

+0

Intentando que esto funcione para una extensión de Google Chrome, así que no estoy seguro si eso es posible ... – IsaacL

5

Si mira http://code.google.com/chrome/extensions/xhr.html, deberá configurar las solicitudes de origen cruzado y luego podrá usar XMLHttpRequest para recuperar los datos.

Editado:

var xhr = new XMLHttpRequest(); 
xhr.onreadystatechange = process; 
xhr.open("GET", "http://216.118.106.247:443/7.html", true); 
xhr.send(); 

function process() 
{ 
    if (xhr.readyState == 4) { 
    var resp = JSON.parse(xhr.responseText); 

    // resp now has the text and you can process it. 
alert(resp); 
    } 
} 
+0

Gracias por la resonancia. ¿Puede ayudarme con dónde colocar el código anterior, en un área

Cuestiones relacionadas