PostMessage adalah API komunikasi lintas asal baru yang diperkenalkan dalam html5 yang memungkinkan Anda berkomunikasi dua arah dengan halaman utama dan halaman kelas bingkai atau halaman yang dibuka oleh window.open. Proses operasi umumnya adalah sebagai berikut:
postMessage(data,origin) menerima dua parameter:
(1) data: Data yang akan diteruskan, spesifikasi HTML5 menyebutkan bahwa parameter dapat berupa jenis dasar JavaScript atau objek yang dapat direproduksi, tetapi tidak semua browser telah melakukan ini, beberapa browser hanya dapat menangani parameter string, jadi kita perlu menggunakan metode JSON.stringify() untuk membuat serial parameter objek saat meneruskan parameter, dan merujuk ke json2.js di versi IE yang lebih rendah untuk mencapai efek serupa.
(2) asal: Parameter string, menunjukkan sumber jendela target, protokol + host + nomor port [+URL], URL akan diabaikan, sehingga tidak dapat ditulis, parameter ini untuk pertimbangan keamanan, metode postMessage() hanya akan meneruskan pesan ke jendela yang ditentukan, tentu saja, jika Anda mau, Anda juga dapat mengatur parameter ke "*", sehingga dapat diteruskan ke jendela mana pun, jika Anda ingin menentukan asal yang sama dengan jendela saat ini, diatur ke "/";
Kirim pesan dan terima pesan sendiri
Kodenya adalah sebagai berikut:
Jendela induk mengirimkan pesan ke jendela turunan, dan jendela anak menerima pesan
Kodenya adalah sebagai berikut:
Jendela turunan mengirim pesan ke jendela induk, dan jendela induk menerima pesan
Kodenya adalah sebagai berikut:
Selain itu, mode pendengar/klien sederhana dilampirkan ke klien untuk pesan lintas domain di alamat berikut:Login hyperlink terlihat.
(Akhir)
|