Skip to content

[Updated] Brazilian Portuguese translations #247

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 21 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
1f18bf0
fix: more accurate ptBr translations for "config_defaults" page
jpricardo Apr 21, 2025
52fe234
fix: missing accent in "cópia"
jpricardo Apr 21, 2025
d6275d4
chore: quotes on every property, added missing translations for the "…
jpricardo Apr 21, 2025
9cd8b4b
feat: added missing translations, fixed some minor typos
jpricardo Apr 21, 2025
91052e3
fix: improved ptBR translations, fixed some small typos
jpricardo Apr 21, 2025
dbdf0ae
feat: added updated translations
jpricardo Apr 21, 2025
96f3e5b
fix: fixed some typos, added missing aliases
jpricardo Apr 21, 2025
fe77368
fix: fixed some typos, changed some translations to be more clear and…
jpricardo Apr 21, 2025
cbb14e4
feat: added missing properties and updated existing ones
jpricardo Apr 21, 2025
9375f99
feat: added missing translation for statusText
jpricardo Apr 22, 2025
378d4c1
fix: fixed some typos, code formatting and mistranslations
jpricardo Apr 22, 2025
07775b7
fix: updated translation for config defaults page title
jpricardo Apr 22, 2025
824c1ef
fix: more fitting translation for the "handling_errors" page title
jpricardo Apr 22, 2025
d057f58
fix: using console.log instead of console.error, added some clarity f…
jpricardo Apr 22, 2025
f9ff457
fix: fixed "deprecated" translation to be more in line with other pages
jpricardo Apr 22, 2025
8ecee75
feat: update translation for the whole page, adding missing translati…
jpricardo Apr 22, 2025
6b40d12
fix: fixed translation for "ulencoded" page title
jpricardo Apr 22, 2025
ec4bb7c
feat: added missing translations
jpricardo Apr 22, 2025
ecef70f
feat: added "new" emoji, in line with the english docs
jpricardo Apr 22, 2025
4d4249a
feat: translation for the "multipart" page
jpricardo Apr 22, 2025
ba9374e
fix: typo
jpricardo Apr 22, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 10 additions & 9 deletions posts/ptBR/api_intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@ Requisições podem ser feitas passando as configuraçãos relevantes para o `ax
##### axios(config)

```js
import axios from 'axios';

// Envia uma requisição post
// Envia uma requisição POST
axios({
method: "post",
url: "/user/12345",
Expand All @@ -31,9 +29,10 @@ axios({
method: "get",
url: "http://bit.ly/2mTM3nY",
responseType: "stream",
}).then(function (response) {
response.data.pipe(fs.createWriteStream("ada_lovelace.jpg"));
});
})
.then(function (response) {
response.data.pipe(fs.createWriteStream("ada_lovelace.jpg"));
});
```

##### axios(url[, config])
Expand All @@ -43,7 +42,7 @@ axios({
axios("/user/12345");
```

### Apelidos para requisições
### Pseudônimos para requisições

Por conveniência, foram fornecidos pseudônimos para todos os métodos de solicitação suportados.

Expand All @@ -55,6 +54,8 @@ Por conveniência, foram fornecidos pseudônimos para todos os métodos de solic
##### axios.post(url[, data[, config]])
##### axios.put(url[, data[, config]])
##### axios.patch(url[, data[, config]])
##### axios.postForm(url[, data[, config]])
##### axios.putForm(url[, data[, config]])
##### axios.patchForm(url[, data[, config]])

###### INFO
Ao usar os pseudônimo dos métodos, as propriedades `url`,` method` e `data` não precisam ser especificadas na configuração.
> NOTA: Ao usar os pseudônimos dos métodos, as propriedades `url`,` method` e `data` não precisam ser especificadas na configuração.
100 changes: 85 additions & 15 deletions posts/ptBR/cancellation.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,26 @@
---
title: 'Cancelamento'
prev_title: 'Manipulando erros'
prev_title: 'Lidando com Erros'
prev_link: '/ptBR/docs/handling_errors'
next_title: 'Corpo de codificação de URL'
next_title: 'Codificação de URL'
next_link: '/ptBR/docs/urlencoded'
---

## AbortController
## Cancelando requisições

A partir da `v0.22.0`, o Axios oferece suporte ao [`AbortController`](https://developer.mozilla.org/en-US/docs/Web/API/AbortController) para cancelar requisições em forma de API fetch.
Definindo a propriedade `timeout` numa chamada do axios, lidamos com timeouts na **resposta**.

Em alguns casos (caso a conexão com a rede torne-se indisponível, por exemplo) uma chamada do axios se beneficiaria de poder cancelar a **conexão** de forma prematura. Sem o cancelamento, a chamada ficará esperando até que a requisição exceda o tempo máximo definido no `timeout` (o que pode demorar alguns minutos em uma aplicação server-side).

Para finalizar uma chamada você pode utilizar os seguintes métodos:
- `signal`
- `cancelToken` (descontinuado)

Utilizando `timeout` em conjunto com um método de cancelamento (`signal`, por exemplo), podemos lidar com timeouts na **resposta** E TAMBÉM na **conexão**

### `signal`: AbortController

A partir da versão `v0.22.0`, Axios suporta o uso de [`AbortController`](https://developer.mozilla.org/en-US/docs/Web/API/AbortController) para cancelar requisições realizadas via API fetch:

```js
const controller = new AbortController();
Expand All @@ -22,13 +34,40 @@ axios.get('/foo/bar', {
controller.abort()
```

## CancelToken `descontinuado`
Exemplo com timeout utilizando a API [`AbortSignal.timeout()`](https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/timeout) mais recente [nodejs 17.3+]:
```js
axios.get('/foo/bar', {
signal: AbortSignal.timeout(5000) // aborta a requisição após 5 segundos
}).then(function(response) {
//...
});
```

Exemplo com uma função auxiliar:
```js
function newAbortSignal(timeoutMs) {
const abortController = new AbortController();
setTimeout(() => abortController.abort(), timeoutMs || 0);

return abortController.signal;
}

axios.get('/foo/bar', {
signal: newAbortSignal(5000) // aborta a requisição após 5 segundos
}).then(function(response) {
//...
});
```

### CancelToken `descontinuado`

Você também pode cancelat uma requisição utilizando um *CancelToken*.

Você pode cancelar uma requisição usando um *cancel token*.
> A API que o axios utiliza é baseada na [proposta de promessas canceláveis](https://github.com/tc39/proposal-cancelable-promises).

> O token de cancelamento do axios é baseado em retirada [proposta de promessas canceláveis](https://github.com/tc39/proposal-cancelable-promises).
> Essa API foi descontinuada a partir da versão `v0.22.0` e não deve ser utilizada em novos projetos.

Você pode criar um token de cancelamento usando o `CancelToken.source` conforme mostrado abaixo:
Você pode criar um token de cancelamento por meio do método `CancelToken.source`, conforme mostrado abaixo:

```js
const CancelToken = axios.CancelToken;
Expand All @@ -38,9 +77,9 @@ axios.get('/user/12345', {
cancelToken: source.token
}).catch(function (thrown) {
if (axios.isCancel(thrown)) {
console.log('Request canceled', thrown.message);
console.log('Requisição cancelada', thrown.message);
} else {
// manipulando erro
// lida com erro
}
});

Expand All @@ -50,19 +89,19 @@ axios.post('/user/12345', {
cancelToken: source.token
})

// cancela a requisição (o parâmetro de mensagem é opcional)
source.cancel('Operação cancelada pelo usuário');
// cancela a requisição (a mensagem é opcional)
source.cancel('Operação cancelada pelo usuário.');
```

Você também poder criar um token de cancelamento passando uma função executora para o construtor de `CancelToken`
Você também pode criar um token de cancelamento passando uma função executora para o construtor de `CancelToken`:

```js
const CancelToken = axios.CancelToken;
let cancel;

axios.get('/user/12345', {
cancelToken: new CancelToken(function executor(c) {
// Uma função executora recebe uma função de cancelamento como parametro
// A função executora recebe como parâmetro uma função de cancelamento
cancel = c;
})
});
Expand All @@ -71,4 +110,35 @@ axios.get('/user/12345', {
cancel();
```

> Nota: você pode cancelar multiplas requisições com o mesmo token de cancelamento.
> Nota: você pode cancelar várias requisições com o mesmo token / signal.

Durante o período de transição, é possível utilizar ambas as APIs de cancelamento, até mesmo em uma única requisição:

```js
const controller = new AbortController();

const CancelToken = axios.CancelToken;
const source = CancelToken.source();

axios.get('/user/12345', {
cancelToken: source.token,
signal: controller.signal
}).catch(function (thrown) {
if (axios.isCancel(thrown)) {
console.log('Requisição cancelada', thrown.message);
} else {
// lida com erro
}
});

axios.post('/user/12345', {
name: 'new name'
}, {
cancelToken: source.token
})

// cancela a requisição (a mensagem é opcional)
source.cancel('Operação cancelada pelo usuário.');
// OR
controller.abort(); // não suporta mensagem
```
22 changes: 11 additions & 11 deletions posts/ptBR/config_defaults.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
---
title: 'Configurações padrões'
title: 'Configurações Padrão'
prev_title: 'Esquema de respostas'
prev_link: '/ptBR/docs/res_schema'
next_title: 'Interceptadores'
next_link: '/ptBR/docs/interceptors'
---

## Configurações padrões
## Configurações padrão

Você pode especificar configurações padrões que será aplicar em todas as requisições.
Você pode especificar configurações padrão que serão aplicadas a todas as requisições.

### Configurações globais do axios

Expand All @@ -18,32 +18,32 @@ axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
```

### Padrões de instância personalizados
### Padrões para a instância

```js
// Define as configurações padrões quando cria a instância
// Define as configurações padrão quando cria a instância
const instance = axios.create({
baseURL: 'https://api.example.com'
});

// Altera as configurações padrões após a instância ser criada
// Altera as configurações padrão após a instância ser criada
instance.defaults.headers.common['Authorization'] = AUTH_TOKEN;
```

### Ordem de precedência

As configurações serão mescladas pela ordem de precedente. A ordem é o padrão da biblioteca encontrados em [lib/defaults.js](https://github.com/axios/axios/blob/master/lib/defaults.js#L28), depos as propriedades `defaults` da instância, e finalmente `config` argumentos para a requisição. O último terá precedência sobre o primeiro. Aqui está um exemplo.
As configurações serão mescladas seguindo a ordem de precedência. A ordem é os padrões da biblioteca encontrados em [lib/defaults.js](https://github.com/axios/axios/blob/master/lib/defaults.js#L28), depois a propriedade `defaults` da instância, e finalmente o argumento `config` da requisição. Os últimos terão precedência sobre os primeiros. Aqui está um exemplo.

```js
// Cria uma instancia usando os padrões de configurações fornecidas pela biblioteca
// Cria uma instância usando os padrões de configuração fornecidos pela biblioteca
// Neste ponto o valor do timeout é de `0` pois é o padrão da biblioteca
const instance = axios.create();

// Sobrescreve o valor do tempo de espera da biblioteca
// Agora todas as requisições que usarem está instancia terá que esperar 2.5 secundos antes do tempo se esgotar
// Sobrescreve o tempo de espera padrão da biblioteca
// Agora todas as requisições que usarem está instância terão que esperar 2.5 segundos antes do tempo se esgotar
instance.defaults.timeout = 2500;

// Sobrescreve o tempo de espera para apenas está requisição por levar um tempo maior
// Sobrescreve o tempo de espera para apenas esta requisição pois sabemos que ela é demorada
instance.get('/longRequest', {
timeout: 5000
});
Expand Down
21 changes: 11 additions & 10 deletions posts/ptBR/example.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ next_link: '/ptBR/docs/post_example'
---

## nota: Uso de CommonJS
Em ordem de usar o TypeScript (para intellissen e/ou preenchimento automático) enquanto usando CommonJS, importe com o `require()` utilize a seguinte abordagem:
Para usar o TypeScript (para intellisense e/ou preenchimento automático) enquanto utiliza importação via `require()` com CommonJS, utilize a seguinte abordagem:

```js
const axios = require('axios').default;

// axios.<método> agora o axios fornecerá preenchimento automático e tipagens de parâmetros
// axios.<método> agora contará com preenchimento automático e tipagem de parâmetros
```

# Exemplo
Expand All @@ -23,21 +23,21 @@ Executando uma requisição `GET`
```js
const axios = require('axios');

// Faz uma requisição a um usuarío com um ID expecifico
// Faz uma requisição a um usuário com um ID expecífico
axios.get('/user?ID=12345')
.then(function (response) {
// manipula o sucesso da requisição
// manipula a resposta da requisição
console.log(response);
})
.catch(function (error) {
// manipula erros da requisição
console.error(error);
// manipula os erros
console.log(error);
})
.finally(function () {
// sempre será executado
});

// Opcionalmente a requisição acima poderia ser feita assim da seguinte forma
// Opcionalmente a requisição acima poderia ser feita da seguinte maneira
axios.get('/user', {
params: {
ID: 12345
Expand All @@ -47,13 +47,13 @@ axios.get('/user', {
console.log(response);
})
.catch(function (error) {
console.error(error);
console.log(error);
})
.finally(function () {
// sempre será executado
});

// Quer usar async/await? Adicione o prefixo `async` na sua função/método
// Quer usar async/await? Adicione o prefixo `async` à sua função/método
async function getUser() {
try {
const response = await axios.get('/user?ID=12345');
Expand All @@ -63,5 +63,6 @@ async function getUser() {
}
}
```

> **NOTA:** `async/await` faz parte do ECMAScript 2017 e não é suportado no Internet
> Explorer e versões antigas de browsers, use com cuidado.
> Explorer e navegadores antigos, use com cuidado.
22 changes: 11 additions & 11 deletions posts/ptBR/handling_errors.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: 'Manipulando Erros'
title: 'Lidando com Erros'
prev_title: 'Interceptadores'
prev_link: '/ptBR/docs/interceptors'
next_title: 'Cancelamento'
Expand All @@ -11,24 +11,24 @@ axios.get('/user/12345')
.catch(function (error) {
if (error.response) {
// A requisição foi feita e o servidor respondeu com um código de status
// que sai do alcance de 2xx
console.error(error.response.data);
console.error(error.response.status);
console.error(error.response.headers);
// que cai fora do intervalo 200 a 299
console.log(error.response.data);
console.log(error.response.status);
console.log(error.response.headers);
} else if (error.request) {
// A requisição foi feita mas nenhuma resposta foi recebida
// `error.request` é uma instância do XMLHttpRequest no navegador e uma instância de
// http.ClientRequest no node.js
console.error(error.request);
console.log(error.request);
} else {
// Alguma coisa acontenceu ao configurar a requisição que acionou este erro.
console.error('Error', error.message);
// Alguma coisa acontenceu ao configurar a requisição, gerando um erro.
console.log('Error', error.message);
}
console.error(error.config);
console.log(error.config);
});
```

Usando a configuração opcional `validadeStatus`, você pode definir o(s) código(s) HTTP que devem lançar um erro
Usando a configuração opcional `validateStatus`, você pode definir o(s) código(s) HTTP que devem lançar um erro.

```js
axios.get('/user/12345', {
Expand All @@ -43,6 +43,6 @@ Usando o `toJSON` você pode receber um objeto com mais informações sobre o er
```js
axios.get('/user/12345')
.catch(function (error) {
console.error(error.toJSON());
console.log(error.toJSON());
});
```
4 changes: 2 additions & 2 deletions posts/ptBR/interceptors.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: 'Interceptadores'
prev_title: 'Configurações padrões'
prev_title: 'Configurações Padrão'
prev_link: '/ptBR/docs/config_defaults'
next_title: 'Manipulando Erros'
next_title: 'Lidando com Erros'
next_link: '/ptBR/docs/handling_errors'
---

Expand Down
Loading