Fetch - #459
Conversation
gabifs
left a comment
There was a problem hiding this comment.
Valeu pela tradução, Samuel! O texto ficou muito bom — identificadores preservados, links info: mantidos, marcadores *!* intactos e o callout warn aninhado correto.
Só tem um bloqueante: as cercas de código do artigo foram trocadas de ``` para ````. Deixei o detalhe inline. Fora isso, três ajustes de consistência e dois nits.
| A sintaxe básica é a seguinte: | ||
|
|
||
| ```js | ||
| ````js |
There was a problem hiding this comment.
🔴 As cercas de código do artigo foram trocadas de três para quatro crases em 13 blocos. No repositório inteiro não existe nenhum outro js / html — as quatro crases são reservadas para callouts que envolvem uma cerca aninhada (o ````warn da linha 124, que você manteve certo).
Dois problemas: (1) o engine pode não reconhecer as flags run / autorun / height="90" numa cerca de 4 crases, matando os botões de demo silenciosamente; (2) todo merge futuro de sync-<sha> vai conflitar nesses 13 blocos.
Pares a reverter: 22/24, 48/57, 72/81, 85/89, 93/99, 103/122, 141/151, 157/163, 205/223, 235/262, 268/279, 285/288, 292/296. Manter 124 e 133 (o warn).
Dá pra corrigir tudo de uma vez:
awk 'NR==124||NR==133{print;next} {sub(/^````/,"```")} 1' \
5-network/01-fetch/article.md > /tmp/a && mv /tmp/a 5-network/01-fetch/article.md| ```` | ||
|
|
||
| As a show-case for reading in binary format, let's fetch and show a logo image of ["fetch" specification](https://fetch.spec.whatwg.org) (see chapter [Blob](info:blob) for details about operations on `Blob`): | ||
| Como exemplo de leitura em formato binário, vamos buscar e obter a imagem da logo da [especificação do "fetch"](https://fetch.spec.whatwg.org) (veja o capítulo [Blob](info:blob) para mais detalhes sobre operações com `Blob`): |
There was a problem hiding this comment.
🟡 O original é "fetch and show" — "obter" perdeu o sentido de exibir. "a imagem da logo" também ficou redundante.
| Como exemplo de leitura em formato binário, vamos buscar e obter a imagem da logo da [especificação do "fetch"](https://fetch.spec.whatwg.org) (veja o capítulo [Blob](info:blob) para mais detalhes sobre operações com `Blob`): | |
| Como exemplo de leitura em formato binário, vamos buscar e exibir a logo da [especificação do "fetch"](https://fetch.spec.whatwg.org) (veja o capítulo [Blob](info:blob) para mais detalhes sobre operações com `Blob`): |
| - **`url`** -- the URL to access. | ||
| - **`options`** -- optional parameters: method, headers etc. | ||
| - **`url`** -- a URL a ser acessada. | ||
| - **`options`** -- parâmetros opcionais: método, cabeçalhos etc. |
There was a problem hiding this comment.
🟡 O artigo usa headers na maior parte (linhas 37, 135, 153, 155, 188, 225, 301, 312), mas "cabeçalhos" aqui e nas linhas 35, 144 e 147. Padronizando em headers, que é o termo dominante. Mesmo ajuste nas outras três (comentários abaixo).
| - **`options`** -- parâmetros opcionais: método, cabeçalhos etc. | |
| - **`options`** -- parâmetros opcionais: método, headers etc. |
| Receber uma resposta normalmente é um processo de duas fases. | ||
|
|
||
| **First, the `promise`, returned by `fetch`, resolves with an object of the built-in [Response](https://fetch.spec.whatwg.org/#response-class) class as soon as the server responds with headers.** | ||
| **Primeiro, a `promise` retornada por `fetch` é resolvida com um objeto da classe nativa [Response](https://fetch.spec.whatwg.org/#response-class) assim que o servidor responde com os cabeçalhos.** |
There was a problem hiding this comment.
🟡 Mesma padronização de headers.
| **Primeiro, a `promise` retornada por `fetch` é resolvida com um objeto da classe nativa [Response](https://fetch.spec.whatwg.org/#response-class) assim que o servidor responde com os cabeçalhos.** | |
| **Primeiro, a `promise` retornada por `fetch` é resolvida com um objeto da classe nativa [Response](https://fetch.spec.whatwg.org/#response-class) assim que o servidor responde com os headers.** |
| // obtém um cabeçalho específico | ||
| alert(response.headers.get('Content-Type')); // application/json; charset=utf-8 | ||
|
|
||
| // iterate over all headers | ||
| // itera sobre todos os cabeçalhos |
There was a problem hiding this comment.
🟡 Mesma padronização de headers (a sugestão cobre as duas linhas de comentário).
| // obtém um cabeçalho específico | |
| alert(response.headers.get('Content-Type')); // application/json; charset=utf-8 | |
| // iterate over all headers | |
| // itera sobre todos os cabeçalhos | |
| // obtém um header específico | |
| alert(response.headers.get('Content-Type')); // application/json; charset=utf-8 | |
| // itera sobre todos os headers |
| @@ -1,169 +1,168 @@ | |||
|
|
|||
| # Fetch | |||
There was a problem hiding this comment.
⚪ Nit: a linha em branco inicial foi removida. Ela existe no arquivo do upstream em inglês — remover só gera ruído no diff e mais um ponto de conflito no próximo sync.
| # Fetch | |
| # Fetch |
| Nesse momento já podemos verificar o status HTTP, para saber se foi bem-sucedida ou não, e os headers — mas ainda não temos o body. | ||
|
|
||
| The promise rejects if the `fetch` was unable to make HTTP-request, e.g. network problems, or there's no such site. Abnormal HTTP-statuses, such as 404 or 500 do not cause an error. | ||
| A promise é rejeitada se o `fetch` não conseguir fazer a requisição HTTP — por exemplo, por problemas de rede ou se o site não existir. Status HTTP anormais, como 404 ou 500, **não** causam um erro. |
There was a problem hiding this comment.
⚪ Nit: o negrito em não não existe no original. Inofensivo, mas é ênfase que o upstream não tem.
| A promise é rejeitada se o `fetch` não conseguir fazer a requisição HTTP — por exemplo, por problemas de rede ou se o site não existir. Status HTTP anormais, como 404 ou 500, **não** causam um erro. | |
| A promise é rejeitada se o `fetch` não conseguir fazer a requisição HTTP — por exemplo, por problemas de rede ou se o site não existir. Status HTTP anormais, como 404 ou 500, não causam um erro. |
No description provided.