API de busca JavaScript


Índice

    Mostrar índice

A interface Fetch API permite que o navegador da web faça solicitações HTTP para servidores da web.

😀 Não há mais necessidade de XMLHttpRequest.

Suporte ao navegador

Os números na tabela especificam as primeiras versões de navegador que suportam totalmente a API Fetch:


Chrome 42 Edge 14 Firefox 40 Safari 10.1 Opera 29
Apr 2015 Aug 2016 Aug 2015 Mar 2017 Apr 2015

Um exemplo de API de busca

O exemplo abaixo busca um arquivo e exibe o conteúdo:

Exemplo

fetch(file)
.then(x => x.text())
.then(y => myDisplay(y));

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>
<p id="demo">Fetch a file to change this text.</p>
<script>

let file = "fetch_info.txt"

fetch (file)
.then(x => x.text())
.then(y => document.getElementById("demo").innerHTML = y);

</script>
</body>
</html>

Como o Fetch é baseado em async e await, o exemplo acima pode ser mais fácil de entender assim:

Exemplo

async function getText(file) {
  let x = await fetch(file);
  let y = await x.text();
  myDisplay(y);
}

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>
<p id="demo">Fetch a file to change this text.</p>

<script>
getText("fetch_info.txt");

async function getText(file) {
  let x = await fetch(file);
  let y = await x.text();
  document.getElementById("demo").innerHTML = y;
}
</script>

</body>
</html>

Ou melhor ainda: use nomes compreensíveis em vez de x e y:

Exemplo

async function getText(file) {
  let myObject = await fetch(file);
  let myText = await myObject.text();
  myDisplay(myText);
}

Experimente você mesmo →

<!DOCTYPE html>
<html>
<body>
<p id="demo">Fetch a file to change this text.</p>

<script>
getText("fetch_info.txt");

async function getText(file) {
  let myObject = await fetch(file);
  let myText = await myObject.text();
  document.getElementById("demo").innerHTML = myText;
}
</script>

</body>
</html>