Oppure

Loading
26/07/14 12:58
Dany
Utilizzando Ajax vorrei ottenere il sorgente di una pagina situata in un altro dominio:
Per esempio usando la funzione 'open', se l'indirizzo è nello stesso dominio del sorgente (es:
ajax.open("get", "index.html", true);
)funziona perfettamente. Se uso un indirizzo assoluto (es:
ajax.open("get", "http://esempio.com/index.html", true);
) la variabile ajax diventa undefined.
Idee?
Ultima modifica effettuata da Dany 26/07/14 13:01
aaa
26/07/14 14:58
pierotofy
Non puoi fare richieste ajax verso un altro dominio.

Dovrai costruire un "ponte" dal lato server sul tuo dominio che fa la richiesta verso il dominio esterno.

Qualcosa come:

doAjax.php --> GET esempio.com/…

Poi da Javascript fai la richiesta a doAjax.php, che e' all'interno del tuo dominio.
Il mio blog: piero.dev
26/07/14 16:12
netarrow
Una alternativa, se il dominio chiamato lo supporta, è utilizzare CORS:
developer.mozilla.org/en-US/docs/Web/HTTP/…

Poi dal tuo JS ti conviene fare le richieste con jquery che ha un supporto integrato e trasparente per CORS.

Qui un articolo introduttivo che utilizza invece direttamente XMLHTTPRequest: html5rocks.com/en/tutorials/cors/

Chiaramente anche il browser, nel caso di IE in particolare, deve essere sufficientemente moderno per fare questo tipo di chiamate: caniuse.com/…
aaa
28/07/14 10:32
Dany
Grazie mille:)
aaa
01/09/14 20:54
Dany
Scusate se riapro il discorso ma ancora riesco a connettermi ad un altro server!
Mi spiego, Avrei la necessità di verificare se un url esiste o meno su un dato server. Ora, se devo compiere operazioni all'interno dello stesso dominio non ci sono problemi. Riguardo la programmazione Cross-Domain, ho letto numerosi articoli ma ancora riesco a capire:
da quello che ho trovato, i modi possibili sarebbero 2: o con un proxy o con jQuery e Jsonp esempio:
    $.ajax({
    type: 'GET',   
    url: URL,
    dataType: "jsonp",
    crossDomain: true,         
    cache:false, 
    success: function()
    {
        alert("Il file esiste");
    },
    error: function()
    {
        alert("Errore");
    }
    });

Fatto sta che lo script ancora non si riesce a collegare al sito. Mi potreste aiutare a far luce su questo mistero?:om:
aaa
01/09/14 22:42
Roby94
Piero ti ha spiegato che la richiesta della pagina fuori dal tuo host deve essere effettuata dal server, quindi dovrai scrivere una pagina php che si occupi di caricare la suddetta pagina, potresti usare c_url.
aaa
02/09/14 13:15
Dany
Quindi solo con Js non posso nulla?
aaa
02/09/14 20:33
netarrow
Puoi usare javascript se CORS è supportato dal server.
Anche JsonP puoi usarlo solo se il server ti risponde in JsonP.

Dipende dal server da raggiungere, se è configurato adeguatamente, e, nel caso di cors, se il tuo host chiamante è tra le allowed origins.

Nel fare qualche ulteriore ricerca ho trovato questo: client.cors-api.appspot.com/… che dovrebbe dirti se l'host che vuoi chiamare supporta CORS o meno.
aaa