Domanda

Ecco il mio problema: vorrei comunicare tra due siti Web e sto cercando una soluzione pulita.La soluzione attuale utilizza Javascript ma esistono soluzioni alternative sgradevoli a causa delle (comprensibili) restrizioni di scripting tra siti.

Al momento, sito web A apre una finestra modale contenente sito webB usare un jQuery plug-in chiamato jqModale. Sito webB fa del lavoro e restituisce alcuni risultati a sito web A.Per restituire tali informazioni dobbiamo aggirare le restrizioni di cross-site scripting - sito webB crea un iframe che fa riferimento a una pagina su sito web A e include *identificatori di frammenti" contenenti le informazioni da restituire.L'iframe viene sottoposto a polling sito web A per rilevare le informazioni restituite.È un tecnica comune ma è complicato.

Ci sono variazioni come CrossSite e potrei forse usare un POST HTTP da sito webB A sito web A ma sto cercando di evitare gli aggiornamenti della pagina.

Qualcuno ha delle alternative?

MODIFICARE:Vorrei evitare di dover salvare lo stato su sito webB.

È stato utile?

Soluzione

Il mio miglior suggerimento sarebbe quello di creare un servizio web su ciascun sito che l'altro possa chiamare con le informazioni che devono essere trasmesse.Se la sicurezza è necessaria, è facile aggiungere uno schema di autenticazione simile a SSL (o anche un vero e proprio SSL, se lo desideri) a questo sistema per garantire che solo i due server siano in grado di comunicare con i rispettivi servizi web.

Ciò ti consentirebbe di evitare l'hackiness inerente a qualsiasi schema che prevede l'apertura di finestre da parte di un sito sull'altro.

Altri suggerimenti

Con jQuery più recente della 1.2 puoi utilizzare JSONP

@jmein: hai descritto come creare un popup modale (che è esattamente ciò che fa jqModal), tuttavia ti sei perso che il contenuto della finestra modale viene servito da un altro dominio.I due domini coinvolti appartengono a due società separate, quindi non possono essere combinati nel modo da te descritto.

credo che @pat si riferisse a questo

"A partire da jQuery 1.2, puoi caricare dati JSON posizionati su un altro dominio se specifichi un callback JSONP, "http://docs.jquery.com/Ajax/jQuery.getJSON#urldatacallback

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top