Although XMLHttpRequest
is supported by the widest range of browsers I would recommend using the API Fetch she works on XMLHttpRequest
and is more recent breaking away from heavy work.
How this API
uses Promise is easier to handle errors and exceptions.
A basic example:
var request = function(url) {
fetch(url, {
cache: 'reload' // definir o tipo de cache
}).then(function(response) {
if ( response.ok ) {
// texto simples
return response.text();
// para transformar o 'json' que é 'string' para um 'object'
// javascript use 'response.json()' que o próximo 'then' retornará um 'object'
}
// em caso de resposta "opaca" ou outros erros
throw new Error('Fetch error, status code: ' + response.status);
}).then(function(text) {
// buscar elemento (div)
var el = document.getElementById('container');
// adicionar resultado (objeto para string)
el.innerHTML = el.innerHTML += '<br>' + text;
}).catch(function(error) {
// caso haja um erro... tratar aqui
});
};
<button type="button" onclick="request('https://jsonplaceholder.typicode.com/posts/1');">adicionar ao elemento (div)</button>
<div id="container">Resultado:</div>
The current support for Fetch API : (source: caniuse.com )