2017-01-30 5 views
0

Обычно мы используем объект XMLHttpRequest для запросов ajax с использованием Javascript. Есть ли способ использовать ajax с Javascript без использования объекта XMLHttpRequest. Например, при загрузке страницы мне нужно нажать URL-адрес и получить ответ и обработать его, используя javascript без объекта XMLHttpRequest.Javascript Ajax без XMLHttpRequest

+1

Если вы хотите ударить по URL из javascript, должно быть 'XMLHttpRequest'. в javascript вы используете 'XMLHttpRequest', а в jquery вы используете' $ .ajax() ', но в обратном порядке он использует то же самое –

+0

Кажется, что это бэкэнд, а не интерфейс – Engineer

+4

Вопрос: ** Почему? ** Почему вы ищете альтернативы? ? – Rajesh

ответ

2

Fetch API является возможной альтернативой XMLHttpRequest:

Выборка по API предоставляет интерфейс для извлечения ресурсов (в том числе по сети). Это будет казаться знакомым любому, кто использовал XMLHttpRequest, но новый API предоставляет более мощный и гибкий набор функций.

0

Вы можете попробовать создать скрытый IFRAME, но вы должны знать: Same Origin Policy.

Вот что скрытый IFrame выглядит следующим образом:

<script language="JavaScript" type="text/javascript"> 

function alertBobo(alertText) { 
    alert(alertText); 
} 

ifrm = document.createElement("IFRAME"); 
ifrm.setAttribute("src", "/iframe.html"); 
ifrm.setAttribute("id","myIframe"); 
ifrm.setAttribute("style","display:none"); 
ifrm.style.width = 0+"px"; 
ifrm.style.height = 0+"px"; 
document.body.appendChild(ifrm); 
</script> 

Тогда из iframe.html (URL-адрес, который вы бы назвали с Ajax, если вы делали XMLHttpRequest), но вы этого не делаете, мы создаем скрытый iframe.

Вы можете вызывать функции из родительских и передачи данных, как это:

<script language="JavaScript" type="text/javascript"> 
    parent.alertBobo("Iframe Calling"); 
</script> 

И вы получите уведомление с текстом «Iframe Calling» ...

Вы также можете передать JSON, например, для родителей окно.