Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Requête

Mode de mise au point
Requête - AWS AppSync GraphQL

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

L'objet de Query requête vous permet de demander au résolveur AWS AppSync DynamoDB d'envoyer une Query demande à DynamoDB et de spécifier les éléments suivants :

  • Expression de la clé

  • Quel index utiliser

  • Tout filtre supplémentaire

  • Combien d'articles renvoyer

  • S'il convient d'utiliser une lecture cohérente

  • Sens de la requête (vers l'avant ou l'arrière)

  • Jeton de pagination

La structure de l'objet de Query requête est la suivante :

type DynamoDBQueryRequest = { operation: 'Query'; query: { expression: string; expressionNames?: { [key: string]: string }; expressionValues?: { [key: string]: any }; }; index?: string; nextToken?: string; limit?: number; scanIndexForward?: boolean; consistentRead?: boolean; select?: 'ALL_ATTRIBUTES' | 'ALL_PROJECTED_ATTRIBUTES' | 'SPECIFIC_ATTRIBUTES'; filter?: { expression: string; expressionNames?: { [key: string]: string }; expressionValues?: { [key: string]: any }; }; projection?: { expression: string; expressionNames?: { [key: string]: string }; }; };

Les champs sont définis comme suit :

Champs de requête

operation

L'opération DynamoDB à effectuer. Pour que vous puissiez effectuer l'opération DynamoDB Query, ce champ doit être défini sur Query. Cette valeur est obligatoire.

query

Cette query section vous permet de spécifier une expression de condition clé qui décrit les éléments à récupérer depuis DynamoDB. Pour plus d'informations sur la façon d'écrire des expressions de conditions clés, consultez la documentation KeyConditions DynamoDB. Cette section doit être spécifiée.

expression

Expression de la requête. Ce champ doit être spécifié.

expressionNames

Substituts des espaces réservés de nom des attributs de l'expression, sous la forme de paires clé-valeur. La clé correspond à un espace réservé utilisé dans leexpression, et la valeur doit être une chaîne correspondant au nom d'attribut de l'élément dans DynamoDB. Ce champ est facultatif et doit être renseigné uniquement avec des substituts des espaces réservés de nom des attributs de l'expression utilisés dans l'expression.

expressionValues

Substituts des espaces réservés de valeur des attributs de l'expression, sous la forme de paires clé-valeur. La clé correspond à un espace réservé de valeur utilisé dans l'expression, et la valeur doit être typée. Pour plus d'informations sur la façon de spécifier une « valeur saisie », voir Système de types (mappage des demandes). Cette valeur est obligatoire. Ce champ est facultatif et doit être renseigné uniquement avec des substituts des espaces réservés de valeur des attributs de l'expression utilisés dans l'expression.

filter

Filtre supplémentaire qui peut être utilisé pour filtrer les résultats de DynamoDB avant qu'ils soient renvoyés. Pour plus d'informations sur les filtres, consultez Filters (Filtres). Ce champ est facultatif.

index

Nom de l'index à interroger. L'opération de requête DynamoDB vous permet de rechercher une clé de hachage sur les index secondaires locaux et les index secondaires globaux en plus de l'index de clé primaire. Si cela est spécifié, cela indique à DynamoDB d'interroger l'index spécifié. Si elle ne l'est pas, l'index de clé primaire est interrogé.

nextToken

Jeton de pagination pour continuer une requête précédente. Il a été obtenu à partir d'une requête précédente. Ce champ est facultatif.

limit

Nombre maximum d'éléments à évaluer (pas nécessairement le nombre d'éléments correspondants). Ce champ est facultatif.

scanIndexForward

Valeur booléenne indiquant s'il convient d'interroger vers l'avant ou vers l'arrière. Ce champ est facultatif et contient true par défaut.

consistentRead

Un booléen indiquant s'il faut utiliser des lectures cohérentes lors de l'interrogation de DynamoDB. Ce champ est facultatif et contient false par défaut.

select

Par défaut, le résolveur AWS AppSync DynamoDB renvoie uniquement les attributs projetés dans l'index. Si un plus grand nombre d'attributs est requis, vous pouvez définir ce champ. Ce champ est facultatif. Les valeurs prises en charge sont :

ALL_ATTRIBUTES

Renvoie tous les attributs de l'élément depuis la table ou l'index spécifié. Si vous interrogez un index secondaire local, DynamoDB extrait l'élément entier de la table parent pour chaque élément correspondant de l'index. Si l'index est configuré de façon à projeter tous les attributs de l'élément, toutes les données peuvent être obtenues à partir de l'index secondaire local, et aucune extraction n'est nécessaire.

ALL_PROJECTED_ATTRIBUTES

Autorisé seulement lorsque vous interrogez un index. Extrait tous les attributs qui ont été projetés dans l'index. Si l'index est configuré de façon à projeter tous les attributs, la valeur renvoyée revient à spécifier ALL_ATTRIBUTES.

SPECIFIC_ATTRIBUTES

Renvoie uniquement les attributs répertoriés dans le projection « s expression ». Cette valeur de retour revient à spécifier les « projection s » expression sans spécifier de valeur pourSelect.

projection

Projection utilisée pour spécifier les attributs à renvoyer par l'opération DynamoDB. Pour plus d'informations sur les projections, voir Projections. Ce champ est facultatif.

Liste des champs de requête

operation

L'opération DynamoDB à effectuer. Pour que vous puissiez effectuer l'opération DynamoDB Query, ce champ doit être défini sur Query. Cette valeur est obligatoire.

query

Cette query section vous permet de spécifier une expression de condition clé qui décrit les éléments à récupérer depuis DynamoDB. Pour plus d'informations sur la façon d'écrire des expressions de conditions clés, consultez la documentation KeyConditions DynamoDB. Cette section doit être spécifiée.

expression

Expression de la requête. Ce champ doit être spécifié.

expressionNames

Substituts des espaces réservés de nom des attributs de l'expression, sous la forme de paires clé-valeur. La clé correspond à un espace réservé utilisé dans leexpression, et la valeur doit être une chaîne correspondant au nom d'attribut de l'élément dans DynamoDB. Ce champ est facultatif et doit être renseigné uniquement avec des substituts des espaces réservés de nom des attributs de l'expression utilisés dans l'expression.

expressionValues

Substituts des espaces réservés de valeur des attributs de l'expression, sous la forme de paires clé-valeur. La clé correspond à un espace réservé de valeur utilisé dans l'expression, et la valeur doit être typée. Pour plus d'informations sur la façon de spécifier une « valeur saisie », voir Système de types (mappage des demandes). Cette valeur est obligatoire. Ce champ est facultatif et doit être renseigné uniquement avec des substituts des espaces réservés de valeur des attributs de l'expression utilisés dans l'expression.

filter

Filtre supplémentaire qui peut être utilisé pour filtrer les résultats de DynamoDB avant qu'ils soient renvoyés. Pour plus d'informations sur les filtres, consultez Filters (Filtres). Ce champ est facultatif.

index

Nom de l'index à interroger. L'opération de requête DynamoDB vous permet de rechercher une clé de hachage sur les index secondaires locaux et les index secondaires globaux en plus de l'index de clé primaire. Si cela est spécifié, cela indique à DynamoDB d'interroger l'index spécifié. Si elle ne l'est pas, l'index de clé primaire est interrogé.

nextToken

Jeton de pagination pour continuer une requête précédente. Il a été obtenu à partir d'une requête précédente. Ce champ est facultatif.

limit

Nombre maximum d'éléments à évaluer (pas nécessairement le nombre d'éléments correspondants). Ce champ est facultatif.

scanIndexForward

Valeur booléenne indiquant s'il convient d'interroger vers l'avant ou vers l'arrière. Ce champ est facultatif et contient true par défaut.

consistentRead

Un booléen indiquant s'il faut utiliser des lectures cohérentes lors de l'interrogation de DynamoDB. Ce champ est facultatif et contient false par défaut.

select

Par défaut, le résolveur AWS AppSync DynamoDB renvoie uniquement les attributs projetés dans l'index. Si un plus grand nombre d'attributs est requis, vous pouvez définir ce champ. Ce champ est facultatif. Les valeurs prises en charge sont :

ALL_ATTRIBUTES

Renvoie tous les attributs de l'élément depuis la table ou l'index spécifié. Si vous interrogez un index secondaire local, DynamoDB extrait l'élément entier de la table parent pour chaque élément correspondant de l'index. Si l'index est configuré de façon à projeter tous les attributs de l'élément, toutes les données peuvent être obtenues à partir de l'index secondaire local, et aucune extraction n'est nécessaire.

ALL_PROJECTED_ATTRIBUTES

Autorisé seulement lorsque vous interrogez un index. Extrait tous les attributs qui ont été projetés dans l'index. Si l'index est configuré de façon à projeter tous les attributs, la valeur renvoyée revient à spécifier ALL_ATTRIBUTES.

SPECIFIC_ATTRIBUTES

Renvoie uniquement les attributs répertoriés dans le projection « s expression ». Cette valeur de retour revient à spécifier les « projection s » expression sans spécifier de valeur pourSelect.

projection

Projection utilisée pour spécifier les attributs à renvoyer par l'opération DynamoDB. Pour plus d'informations sur les projections, voir Projections. Ce champ est facultatif.

Les résultats de DynamoDB sont automatiquement convertis en types primitifs GraphQL et JSON et sont disponibles dans le résultat du contexte (). context.result

Pour plus d'informations sur la conversion de type DynamoDB, voir Système de types (mappage des réponses).

Pour plus d'informations sur les JavaScript résolveurs, consultez la section Présentation des JavaScript résolveurs.

Les résultats ont la structure suivante :

{ items = [ ... ], nextToken = "a pagination token", scannedCount = 10 }

Les champs sont définis comme suit :

items

Liste contenant les éléments renvoyés par la requête DynamoDB.

nextToken

S'il peut y avoir plusieurs résultats, nextToken contient un jeton de pagination que vous pouvez utiliser dans une autre requête. Notez que cela AWS AppSync chiffre et masque le jeton de pagination renvoyé par DynamoDB. Cela empêche que les données provenant de votre table ne soient accidentellement communiquées au mandataire. Notez également que ces jetons de pagination ne peuvent pas être utilisés entre différentes fonctions ou résolveurs.

scannedCount

Nombre d'éléments correspondant à l'expression de condition de requête, avant qu'une expression de filtre (si elle est présente) ne soit appliquée.

exemple

L'exemple suivant est un gestionnaire de demande de fonction pour une requête getPosts(owner: ID!) GraphQL.

Dans cet exemple, un index secondaire global sur une table est interrogé afin de renvoyer toutes les publications détenues par l'ID spécifié.

import { util } from '@aws-appsync/utils'; export function request(ctx) { const { owner } = ctx.args; return { operation: 'Query', query: { expression: 'ownerId = :ownerId', expressionValues: util.dynamodb.toMapValues({ ':ownerId': owner }), }, index: 'owner-index', }; }

Pour de plus amples informations sur l'API de DynamoDB Query, veuillez consulter la Documentation sur les API de DynamoDB.

Sur cette page

Rubrique suivante :

Analyser

Rubrique précédente :

DeleteItem
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.