Mam poważny problem z komunikacją w najnowszym HTML - 5.
A mianowicie czy ktoś mógłby wytłmaczyć, najlepiej z przykładami zasade działania wymiany informacji poprzez:
- postmessage
- channel messaging
- XHTTPRequest lev. 2
Chodzi mi raczej o typowe przykłady.
Ciekawi mnie szczególnie kwestia samej wymiany informacji - dlaczego nie można po prostu określić domeny do której wysyłamy informacje tylko trzeba bawić się iframe itp.
Najbardziej interesują mnie postmessage oraz channel messaging.
Postmessage to nic innego jak umieszczenie na jednej stronie:
postMessage("tresc wiadomosci", adres);
Na drugiej stronie dajemy:
window.addEventListener( "message", function (e) { if(e.origin !== 'zaufany adres'){ return; } alert("Otrzymana wiadomosc to: " + e.data); }, false);
Czy w tym wypadku za każdym razem trzeba używać iframe do wymiany danych czy jest możliwość po prostu wysłania informacji do innego okna lub elementu w tym oknie? Jak rozumiem należy coś pokombinować z samą opcją postmessage gdzie powinno znaleźć się np. window.postmessage(). W jaki jednak sposób to mniej więcej działa?
Z channel messaging jest podobnie. W teori wystarczy otworzyć połączenie pomiędzy dwoma stronami i można wymieniać się informacjami. Super. W teori wszystko rozumiem jednak mam problem z przelaniem tego na kod.
Czy ktoś z forumowiczów mógłby przedstawić proste przykłady komunikacji przynajmniej przy wykorzystaniu tych dwóch sposobów? Najlepiej z wyjaśnieniem jak określić okno/element docelowy na innej stronie.
Pozdrawiam.