Можно ли использовать метод postMessage()
в Javascript для выполнения междоменных вызовов POST
, GET
, PUT
и т. д.? Если да, то как? И как передать заголовки и данные?
Как использовать postMessage() в Javascript?
Ответы (2)
Это двусторонняя реализация, означающая, что страница, которую вы хотите вызвать, должна иметь обратный вызов, который прослушивает такое сообщение и дает соответствующий ответ. Вы не можете просто использовать его как замену подкачки для AJAX. Лучший способ для этого — использовать прокси-сервер на стороне сервера.
Посетите эту страницу, чтобы узнать, как работает postMessage
.
person
Alex Turpin
schedule
17.11.2011
Да, это возможно.
здесь есть хорошая демонстрация того, что именно вам нужно.
document.getElementById("iframe").contentWindow.postMessage(
document.getElementById("message").value,
"http://anotherdomain.com"
);
обрабатывается со второй стороны с
window.onmessage = function(e){
if ( e.origin !== "http://html5demos.com" ) {
return;
}
document.getElementById("test").innerHTML = e.origin + " said: " + e.data;
};
person
Martin.
schedule
17.11.2011