mirror of
https://github.com/tenrok/axios.git
synced 2026-06-17 19:21:29 +03:00
49 lines
2.2 KiB
Markdown
49 lines
2.2 KiB
Markdown
# Valores predeterminados de configuración
|
|
|
|
axios te permite especificar valores predeterminados de configuración que se aplicarán a cada solicitud. Puedes definir valores predeterminados para `baseURL`, `headers`, `timeout` y otras propiedades. A continuación se muestra un ejemplo de cómo usar los valores predeterminados de configuración:
|
|
|
|
```js
|
|
axios.defaults.baseURL = "https://jsonplaceholder.typicode.com/posts";
|
|
axios.defaults.headers.common["Authorization"] = AUTH_TOKEN;
|
|
axios.defaults.headers.post["Content-Type"] =
|
|
"application/x-www-form-urlencoded";
|
|
```
|
|
|
|
## Valores predeterminados personalizados por instancia
|
|
|
|
Las instancias de axios se declaran con sus propios valores predeterminados al ser creadas. Estos valores pueden sobreescribirse estableciendo la propiedad `defaults` en la instancia. A continuación se muestra un ejemplo de cómo usar valores predeterminados personalizados por instancia:
|
|
|
|
```js
|
|
var instance = axios.create({
|
|
baseURL: "https://jsonplaceholder.typicode.com/posts",
|
|
timeout: 1000,
|
|
headers: { Authorization: "foobar" },
|
|
});
|
|
|
|
instance.defaults.headers.common["Authorization"] = AUTH_TOKEN;
|
|
```
|
|
|
|
## Orden de precedencia de la configuración
|
|
|
|
La configuración se combinará con un orden de precedencia. El orden es el siguiente: primero se establecen los valores predeterminados de la librería, luego las propiedades predeterminadas de la instancia y, finalmente, el argumento de configuración de la solicitud. A continuación se muestra un ejemplo del orden de precedencia.
|
|
|
|
Primero, vamos a crear una instancia con los valores predeterminados que proporciona la librería. En este punto, el valor de configuración de timeout es `0`, que es el valor predeterminado de la librería.
|
|
|
|
```js
|
|
const instance = axios.create();
|
|
```
|
|
|
|
Ahora sobreescribiremos el timeout predeterminado de la instancia a `2500` milisegundos. A partir de ahora, todas las solicitudes que usen esta instancia esperarán 2.5 segundos antes de expirar.
|
|
|
|
```js
|
|
instance.defaults.timeout = 2500;
|
|
```
|
|
|
|
Finalmente, haremos una solicitud con un timeout de `5000` milisegundos. Esta solicitud esperará 5 segundos antes de expirar.
|
|
|
|
```js
|
|
instance.get("/longRequest", {
|
|
timeout: 5000,
|
|
});
|
|
```
|