Esta documentación ha sido traducida automáticamente por IA.
NocoBase le ofrece un APIClient basado en Axios, que puede utilizar para realizar solicitudes HTTP desde cualquier lugar donde pueda acceder a un Context.
Los lugares comunes donde puede obtener un Context incluyen:
app.contextengine.contextplugin.contextmodel.contextctx.api.request() es el método más utilizado para realizar solicitudes. Sus parámetros y valores de retorno son idénticos a los de axios.request().
Uso básico
Puede utilizar directamente las configuraciones de solicitud estándar de Axios:
ctx.api.axios es una instancia de AxiosInstance a través de la cual puede modificar las configuraciones predeterminadas globales o añadir interceptores de solicitud.
Modificar la configuración predeterminada
Para más configuraciones disponibles, consulte la Configuración predeterminada de Axios.
Los interceptores le permiten procesar las solicitudes antes de que se envíen o las respuestas después de que se reciban. Por ejemplo, puede añadir encabezados de solicitud de forma consistente, serializar parámetros o mostrar mensajes de error unificados.
A continuación, se muestran los encabezados de solicitud personalizados compatibles con el servidor NocoBase, que pueden utilizarse para escenarios de múltiples aplicaciones, internacionalización, múltiples roles o múltiples autenticaciones.
| Header | Descripción |
|---|---|
X-App | Especifica la aplicación actual a la que se accede en escenarios de múltiples aplicaciones |
X-Locale | Idioma actual (ej.: zh-CN, en-US) |
X-Hostname | Nombre de host del cliente |
X-Timezone | Zona horaria del cliente (ej.: +08:00) |
X-Role | Rol actual |
X-Authenticator | Método de autenticación del usuario actual |
💡 Consejo
Estos encabezados de solicitud suelen ser inyectados automáticamente por los interceptores y no necesitan ser configurados manualmente. Solo en escenarios especiales (como entornos de prueba o escenarios de múltiples instancias) es necesario añadirlos manualmente.
En los componentes de React, puede obtener el objeto de contexto a través de useFlowContext() y luego llamar a ctx.api para realizar solicitudes.
useRequest de ahooksEn el desarrollo real, puede utilizar el Hook useRequest proporcionado por ahooks para manejar de forma más conveniente el ciclo de vida y el estado de las solicitudes.
Este enfoque hace que la lógica de las solicitudes sea más declarativa, gestionando automáticamente los estados de carga, el manejo de errores y la lógica de actualización, lo cual es muy adecuado para su uso en componentes.