HTMLeando: para desarrolladores Web

Pregunta


¿Cómo hacer varias peticiones JSON a otro dominio en tiempo de ejecución? 

Responder esta pregunta por dudin el 2009-02-18
El caso es que deseo acceder por medio de Javascript a ficheros JSON que están alojado en otro servidor, pero no puedo acceder mediante AJAX pues es otro dominio. Les muestro mi caso por medio de este ejemplo:
http://feeds.delicious.com/v2/json/recent?callback=mifuncion

Al incluirlo en la cabecera de la página como un Javascript funciona, pero necesito hacer varias peticiones en tiempo de ejecución en función de los datos de entrada por el usuario.
<script type="text/javascript" src="http://feeds.delicious.com/v2/json/recent?callback=mifuncion"></script>

Respuestas

Thumb_up
Thumb_down

0%
0%
Puedes intentar usar esta clase JavaScript basada en la librería Javascript Prototype, para hacer peticiones a ficheros JavaScript remotos, te pongo un ejemplo de cómo usarla.
<html>
<head>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" >
var Request = Class.create({
  initialize: function(url, params) {
    this.url    = url;
    this.params = $H(params);
  },
 
  send: function() {
    var script;
    var head = $$("head")[0];
    function sweep() {
      setTimeout(function() { 
        head.removeChild(script)
        script.onerror = script.onload = null;
      }, 5000);
    }
 
    head.appendChild(script = Object.extend(this.createScript(), {
      onerror: sweep,
      onload: sweep
    }));
  },
  createScript: function() {
    return Object.extend(document.createElement("script"), {
      src:  this.url + "?" + this.params.toQueryString(),
      type: "text/javascript"
    });
  }
});
</script>
</head>
<body>
<script type="text/javascript" >
var req = new Request('http://feeds.delicious.com/v2/json/recent',{callback: 'mifuncion'});
    req.send();
function mifuncion(json){
 // mi acción con los datos
}
</script>

La misma inserta en la cabecera del documento HTML (en tiempo de ejecución) una llamada al fichero JavaScript remoto y al cabo de un tiempo la elimina.
por Anónimo el 2009-02-19

Anónimo:   Entrar


Consejo: Sé tan específico y descriptivo como puedas. Comparte tu experiencia personal o tus conocimientos.
Puedes investigar para completar tu respuesta.

Puedes poner directamente trozos de código usando las etiquetas [code=php] y [/code] o incrustar desde Snipplr.com [snippet=id_snippet]

Compartir: WebeameMeneame Delicious Digg

Preguntas relacionadas