Publication : de la page web au serveur
Un message qui est envoyé depuis une page web (par le biais d'un IFrame intégré dans cette page web) vers le serveur est appelé un message intégré. Il est envoyé dans les étapes suivantes :
1.JavaScript est utilisé pour envoyer le message intégré depuis la page web dans l'Frame. Le message intégré est envoyé en tant qu'un objet JSON qui est le premier paramètre de la méthode postMessage().
2.Lorsque le message intégré atteint l'IFrame, la solution sérialise le message en un string JSON et envoie ce string dans le flux de travail de la solution sur MobileTogether Server. Cette étape est effectuée automatiquement ; vous n'avez pas besoin de spécifier un traitement.
3.Dans le flux de travail, le message intégré peut être prélevé avec l'événementOnEmbeddedMessage. Si une action est spécifiée pour cet événement, la source de page JSON $MT_EMBEDDEDMESSAGE est créée automatiquement. Vous pouvez définir des actions supplémentaires le cas échéant.
Dans cette section, nous discutons de la méthode postMessage() de l'Étape 1. Voir les exemples de la page web HTML qui publient respectivement des données JSON et XML pour une description détaillée de l'ensemble du traitement. L'Étape 2 est effectuée automatiquement et ne nécessite donc aucune explication. L'Étape 3 est décrite en détail dans les exemples JSON et XML. Voir aussi la description de l'événement SurMessageIntégré pour plus d'informations.
À propos de la méthode postMessage
Veuillez noter les points clé suivants :
•Le message intégré est transféré en tant que le premier paramètre de postMessage()
•Le message intégré est transféré en tant qu'un objet JSON
•Les données dans le message sont sérialisées à l'aide de l' algorithme clone structuré. Cela signifie que le message peut contenir une série d'objets de données ; la sérialisation sera effectuée automatiquement. Veuillez noter, néanmoins que tous les types de données ne peuvent pas être envoyés à MobileTogether Server
Si les données à envoyer sont en format JSON, alors la méthode postMessage() peut envoyer la structure de données JSON sans aucune modification. Par exemple, si une structure JSON est attribuée à une variable nommée myJSON, cette structure peut être envoyée avec la méthode postMessage() comme ceci :
function sendMyMessage() {
document.querySelector('iframe').contentWindow.postMessage(myJSONData, '*');
}
Dans cet exemple, la structure de données JSON sera reçue par l'IFrame. La solution dans l’IFrame enverra les données dans le flux de travail en tant que string JSON. Dans le flux de travail, les données peuvent être prélevées par l'événement de page SurMessageIntégré et stocké dans la source de page JSON $MT_EMBEDDEDMESSAGE .
Voir cette Documentation Mozilla Developer Network pour des informations détaillées concernant postMessage(). Voir aussi les exemples JSON et XML examples.