

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Effettuazione di richieste API di AWS interrogazione utilizzando il protocollo di query in Amazon SQS
<a name="sqs-making-api-requests-xml"></a>

Questo argomento spiega come costruire un endpoint Amazon SQS, effettuare richieste GET e POST e interpretare le risposte.

## Costruzione di un endpoint
<a name="sqs-api-constructing-endpoints"></a>

Per lavorare con le code Amazon SQS, è necessario creare un endpoint. Per informazioni sugli endpoint Amazon SQS, consulta le seguenti pagine in *Riferimenti generali di Amazon Web Services*:
+ [Endpoint regionali](https://docs.aws.amazon.com/general/latest/gr/rande.html#sqs_region)
+ [Endpoint e quote di Amazon Simple Queue Service](https://docs.aws.amazon.com/general/latest/gr/sqs-service)

Ogni endpoint Amazon SQS è completamente indipendente. Ad esempio, se due code sono denominate *MyQueue* e una ha l'endpoint `sqs.us-east-2.amazonaws.com`, mentre l'altra ha l'endpoint `sqs.eu-west-2.amazonaws.com`, le due code non condividono alcun dato tra loro.

Di seguito è riportato un esempio di un endpoint che invia una richiesta per creare una coda. 

```
https://sqs.eu-west-2.amazonaws.com/   
?Action=CreateQueue
&DefaultVisibilityTimeout=40
&QueueName=MyQueue
&Version=2012-11-05
&{{AUTHPARAMS}}
```

**Nota**  
I nomi delle code e la coda fanno distinzione tra maiuscole e minuscole. URLs   
La struttura di {{`AUTHPARAMS`}} dipende dalla modalità di firma della richiesta API. Per ulteriori informazioni, consulta [Signing AWS API Requests](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) nel *Amazon Web Services General Reference*.

## Effettuare una richiesta GET
<a name="structure-get-request"></a>

Una richiesta Amazon SQS GET è strutturata come un URL che contiene le seguenti informazioni:
+ **Endpoint**: la risorsa su cui agisce la richiesta (il [nome della coda e l'URL](sqs-queue-message-identifiers.md#queue-name-url)), ad esempio: `https://sqs.us-east-2.amazonaws.com/{{123456789012}}/MyQueue`
+ **Operazione**: l'[operazione](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_Operations.html) che desideri eseguire sull'endpoint. Un punto di domanda (`?`) separa l'endpoint dall'azione, ad esempio: `?Action=SendMessage&MessageBody=Your%20Message%20Text`
+ **Parametri**: gli eventuali parametri della richiesta. Ogni parametro è separato da una e commerciale (`&`) ad esempio: `&Version=2012-11-05&{{AUTHPARAMS}}` 

Il seguente è un esempio di una richiesta GET per inviare un messaggio a una coda Amazon SQS.

```
https://sqs.us-east-2.amazonaws.com/{{123456789012}}/MyQueue
?Action=SendMessage&MessageBody=Your%20message%20text
&Version=2012-11-05
&{{AUTHPARAMS}}
```

**Nota**  
I nomi delle code e la coda fanno distinzione tra maiuscole e URLs minuscole.  
Poiché le richieste GET lo sono URLs, è necessario codificare in URL tutti i valori dei parametri. Poiché gli spazi non sono consentiti URLs, ogni spazio è codificato come URL. `%20` Il resto dell'esempio non è stato codificato nell'URL per renderne più facile la lettura.

## Effettuare una richiesta POST
<a name="structure-post-request"></a>

Una richiesta Amazon SQS POST invia i parametri di query come modulo nel corpo di una richiesta HTTP.

Di seguito è riportato un esempio di intestazione HTTP con `Content-Type` impostato su `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'intestazione è seguita da una richiesta GET `[form-urlencoded](https://www.w3.org/MarkUp/html-spec/html-spec_8.html#SEC8.2)` che invia un messaggio a una coda Amazon SQS. Ogni parametro è separato da una e commerciale (`&`).

```
Action=SendMessage
&MessageBody=Your+Message+Text
&Expires=2020-10-15T12%3A00%3A00Z
&Version=2012-11-05
&{{AUTHPARAMS}}
```

**Nota**  
Solo l'intestazione HTTP `Content-Type` è obbligatoria. La richiesta `{{AUTHPARAMS}}` è la stessa della richiesta GET.  
Il client HTTP potrebbe aggiungere altri elementi alla richiesta HTTP, a seconda della versione HTTP del client.