Ho un widget basato su iframe che utilizza postMessage per comunicare al genitore. Ciò significa che io mando un messaggio dall'iframe per richiedere un ridimensionamento di se stesso. I dati sono json e al momento interferiscono con i messaggi inviati da altri widget/script nella pagina padre.Esiste un modo standard per riconoscere il tuo messaggio post nel gestore eventi onmessage?
Quindi ho bisogno di un modo per distinguere i miei messaggi dagli altri.
Ora sto pensando di aggiungere semplicemente un parametro { app: 'Poules.com', [...] }
e controllare tale parametro prima di elaborare il messaggio.
Ma prima di fare: ci sono già contratti stabiliti per questo?
codice di invio:
parent.postMessage(JSON.stringify(data), page.widgetOrigin);
fine di ricezione:
poules.sdk.receiveMessage = function(event)
{
var data = JSON.parse(event.data);
switch (data.message)
{
case 'requestResize': poules.sdk.requestResize(data); break;
case 'loginSuccess': poules.sdk.triggerLoginEvent(data); break;
default: throw "poules.sdk: can't parse message: " + event.data;
};
}