From 2f05d6b0bf2ec1cf7357e7a300b3b181718c9b1c Mon Sep 17 00:00:00 2001 From: dielduarte Date: Tue, 21 Nov 2023 23:44:21 -0300 Subject: [PATCH 1/2] translate beacon api page to portuguese --- files/pt-br/web/api/beacon_api/index.md | 38 +++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 files/pt-br/web/api/beacon_api/index.md diff --git a/files/pt-br/web/api/beacon_api/index.md b/files/pt-br/web/api/beacon_api/index.md new file mode 100644 index 00000000000000..e5c8525c0fa8fa --- /dev/null +++ b/files/pt-br/web/api/beacon_api/index.md @@ -0,0 +1,38 @@ +--- +title: Beacon API +slug: Web/API/Beacon_API +page-type: web-api-overview +browser-compat: api.Navigator.sendBeacon +--- + +{{DefaultAPISidebar("Beacon")}} + +A **`Beacon`** API é usada para enviar um request assíncrono e não bloqueante para um servidor web. O request não espera por uma resposta. Ao contrário de requests feitos utilizando {{domxref("XMLHttpRequest")}} ou {{domxref("Fetch")}}, o navegador garante que irá iniciar e aguardar a conclusão do request antes da página ser desmontada. + +O principal caso de uso da Beacon API é enviar dados de análise, como eventos do lado do cliente ou dados da sessão para o servidor. Historicamente, os sites costumavam usar {{domxref("XMLHttpRequest")}} para isso, mas os navegadores não garantem o envio de solicitações assíncronas em algumas circunstâncias (por exemplo, se a página vai ser desmontada). Para evitar esses problemas, os sites usam diversas técnicas, como enviar o request síncrono, mas isso tem um efeito colateral ruim na responsividade. Como beacon requests são assíncronos quanto garantidas de serem enviados, elas combinam desempenho e confiabilidade. + +Para mais detalhes sobre a motivação e uso dessa API, veja a documentação sobre o método {{domxref("navigator.sendBeacon()")}} + +> **Nota:** essa API _não está disponível_ nos [Web Workers](/pt-BR/docs/Web/API/Web_Workers_API) (não é exposta através do {{domxref("WorkerNavigator")}}). + +## Interface + +Essa API define apenas um método: {{domxref("navigator.sendBeacon()")}}. + +O método recebe dois argumentos, a URL e os dados que serão enviados no request. Os dados são opcionais e seu tipo pode ser um {{jsxref("TypedArray")}}, {{jsxref("DataView")}}, {{domxref("Blob")}}, uma string ou objeto, ou um objeto {{domxref("FormData")}}. Se o navegador colocar na fila o request para ser executado com sucesso o método retornará `true`; se não retornará `false`. + +## Especificações + +{{Specifications}} + +## Compatibilidade com navegadores + +{{Compat}} + +## Veja também + +- [Beacon standard](https://w3c.github.io/beacon/) +- [Beacon CanIUse data](https://caniuse.com/#search=beacon) +- [Intercepting beacons through service workers](https://ehsanakhgari.org/blog/2015-04-08/intercepting-beacons-through-service-workers/); Ehsan Akhgari; 2015-Apr-08 +- +- [Beaconing in Practice](https://calendar.perfplanet.com/2020/beaconing-in-practice/) From bca25e5dcba4b2529e3b9d78343c6ded0da9398a Mon Sep 17 00:00:00 2001 From: Diel Duarte Date: Tue, 21 Nov 2023 23:49:39 -0300 Subject: [PATCH 2/2] Update files/pt-br/web/api/beacon_api/index.md Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- files/pt-br/web/api/beacon_api/index.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/files/pt-br/web/api/beacon_api/index.md b/files/pt-br/web/api/beacon_api/index.md index e5c8525c0fa8fa..43c58b9c8d0bbf 100644 --- a/files/pt-br/web/api/beacon_api/index.md +++ b/files/pt-br/web/api/beacon_api/index.md @@ -1,8 +1,6 @@ --- title: Beacon API slug: Web/API/Beacon_API -page-type: web-api-overview -browser-compat: api.Navigator.sendBeacon --- {{DefaultAPISidebar("Beacon")}}