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.
Effectuer des demandes d'API de requête à l'aide du protocole de AWS requête dans Amazon SQS
Dans cette section, vous apprenez à construire un point de terminaison Amazon SQS, à créer des requêtes GET et POST, et à interpréter les réponses.
Rubriques
Constitution d'un point de terminaison
Afin d'utiliser des files d'attente Amazon SQS, vous devez construire un point de terminaison. Pour plus d'informations sur les points de terminaison Amazon SQS, consultez les pages suivantes dans la Référence générale d'Amazon Web Services :
Chaque point de terminaison Amazon SQS est indépendant. Par exemple, si deux files d'attente sont nommées MyQueueet que l'une contient le point de terminaison sqs.us-east-2.amazonaws.com
tandis que l'autre possède le point de terminaisonsqs.eu-west-2.amazonaws.com
, les deux files d'attente ne partagent aucune donnée entre elles.
L'exemple suivant correspond à un point de terminaison lançant une requête pour créer une file d'attente.
https://sqs.eu-west-2.amazonaws.com/
?Action=CreateQueue
&DefaultVisibilityTimeout=40
&QueueName=MyQueue
&Version=2012-11-05
&AUTHPARAMS
Note
Les noms et les URL des files d'attente sont sensibles à la casse.
La structure de
dépend de la signature de la demande d'API. Pour plus d'informations, consultez Signing AWS API Requests dans le manuel Amazon Web Services General Reference.AUTHPARAMS
Envoi de requête GET
Une requête GET Amazon SQS est structurée comme une URL se composant des éléments suivants :
-
Point de terminaison : ressource sur laquelle la requête agit (nom de la file d'attente et URL), par exemple :
https://sqs.us-east-2.amazonaws.com/
123456789012
/MyQueue -
Action : action que vous souhaitez effectuer sur le point de terminaison. Un point d'interrogation (
?
) sépare le point de terminaison de l'action, par exemple :?Action=SendMessage&MessageBody=Your%20Message%20Text
. -
Paramètres : tout paramètre de demande. Chaque paramètre est séparé par une esperluette (
&
), par exemple :&Version=2012-11-05&
.AUTHPARAMS
Voici un exemple de requête GET qui envoie un message à une file d'attente Amazon SQS.
https://sqs.us-east-2.amazonaws.com/123456789012
/MyQueue
?Action=SendMessage&MessageBody=Your%20message%20text
&Version=2012-11-05
&AUTHPARAMS
Note
Les noms et les URL des files d'attente sont sensibles à la casse.
Dans la mesure où les requêtes GET sont des URL, vous devez coder en URL toutes les valeurs des paramètres. Les espaces ne sont pas autorisés dans les URL. Dès lors, chaque espace est encodé sous la forme %20
. Pour faciliter la lecture, le reste de l'exemple n'a pas été encodé selon le format URL.
Envoi de requête POST
Une demande POST Amazon SQS envoie des paramètres de requête sous forme de formulaire dans le corps d'une demande HTTP.
L'exemple suivant illustre un en-tête HTTP avec Content-Type
défini sur application/x-www-form-urlencoded
.
POST /123456789012
/MyQueue HTTP/1.1
Host: sqs.us-east-2.amazonaws.com
Content-Type: application/x-www-form-urlencoded
L'en-tête est suivi d'une requête GET form-urlencoded
qui envoie un message à une file d'attente Amazon SQS. Chaque paramètre est séparé par une esperluette (&
).
Action=SendMessage
&MessageBody=Your+Message+Text
&Expires=2020-10-15T12%3A00%3A00Z
&Version=2012-11-05
&AUTHPARAMS
Note
Seul l'en-tête HTTP Content-Type
est obligatoire. L'élément
est le même que pour la requête GET.AUTHPARAMS
Votre client HTTP peut ajouter d'autres éléments à la requête HTTP, en fonction de la version HTTP du client.