Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Archivos de configuración de la aplicación

GraphQL Configuration Files

Puede configurar la API GraphQL para su aplicación en el graphql directorio:

app/
└── graphql/
├── config.json
└── custom_resolvers
└── <resolver name>.json
graphql/config.json
{
"use_natural_pluralization": <Boolean>,
"disable_schema_introspection": <Boolean>
}
Campo
Descripción
use_natural_pluralization
boolean

true por defecto para nuevas aplicaciones.

Solo puedes establecer el valor en false cuando Cree una nueva aplicación con el punto final de la API de administración y pase la propiedad al cuerpo de la solicitud. El valor no se puede cambiar a false una vez creada la aplicación.

If true, generated schema type names use common English pluralization whenever possible.

Si false, o si no se puede determinar una pluralización natural, entonces los tipos plurales usan el nombre del tipo singular con una "s" añadida al final.

Ejemplo

App Services can use either a natural plural or a default plural for a generated "mouse" type:

  • Natural: "ratones"

  • Predeterminado: "ratones"

disable_schema_introspection
boolean

Este valor es false por defecto para las nuevas aplicaciones.

trueSi, la API GraphQL bloquea las consultas de introspección de los clientes.

Esta configuración es útil para aplicaciones de producción que no desean exponer su esquema GraphQL al público. Cuando la introspección está deshabilitada, clientes como GraphiQL no pueden mostrar la documentación del esquema de la API ni autocompletar consultas y mutaciones.

graphql/custom_resolvers/.json<resolver name>
{
"on_type": "<Parent Type Name>",
"field_name": "<Resolver Field Name>",
"function_name": "<Resolver Function Name>",
"input_type": "<Input Type Name>" | { <JSON Schema> },
"input_type_format": "<Input Type Format>",
"payload_type": "<Payload Type Name>" | { <JSON Schema> },
"payload_type_format": "<Payload Type Format>",
}
Campo
Descripción
on_type
string

El tipo principal que expone el solucionador personalizado como uno de sus campos.

Opciones válidas:

field_name
string

El nombre del campo en el tipo padre que expone el resolver personalizado. El nombre del campo debe ser único entre todos los resolutores personalizados en su tipo padre.

If the field name matches a field in the parent type's schema, the custom resolver overrides the schema type.

function_name
string

The name of the function that runs when the resolver is called. The function arguments may accept a single argument (configured by input_type and input_type_format) and must return a payload value (configured by payload_type and payload_type_format).

input_type
string | object

El tipo del argumento input del resolvedor (si acepta entrada). Puede especificar el nombre de otro tipo en su esquema GraphQL o un esquema JSON personalizado específico del resolvedor.

input_type_format
string

Una descripción de metadatos de input_type.

Opciones válidas:

  • "scalar" (para un valor único de un tipo BSON específico)

  • "scalar-list" (para múltiples valores de un tipo específico de BSON)

  • "generated" (for a single value of a specific exposed type)

  • "generated-list" (for multiple values of a specific exposed type)

  • "custom" (para un esquema JSON personalizado)

payload_type
string | object

The type of the value returned in the resolver's payload. You can specify either the name of another type in your GraphQL schema or a custom JSON schema specific to the resolver.

If you do not specify a payload type, the resolver returns a DefaultPayload object:

type DefaultPayload {
status: String!
}
payload_type_format
string

Una descripción de metadatos de payload_type.

Opciones válidas:

  • "scalar" (para un valor único de un tipo BSON específico)

  • "scalar-list" (para múltiples valores de un tipo específico de BSON)

  • "generated" (for a single value of a specific exposed type)

  • "generated-list" (for multiple values of a specific exposed type)

  • "custom" (para un esquema JSON personalizado)

Volver

Funciones

En esta página