

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à.

# Invocazione di un'API privata
<a name="apigateway-private-api-test-invoke-url"></a>

Puoi invocare un'API privata solo dall'interno di un VPC utilizzando un endpoint VPC. La tua API privata deve avere una politica delle risorse che consenta a endpoint specifici VPCs e VPC di richiamare la tua API.

Se richiami un'API privata senza utilizzare un nome di dominio personalizzato o nomi DNS privati e il tuo APIs nome di dominio utilizza una politica di sicurezza che inizia con`SecurityPolicy_`, devi impostare la modalità di accesso all'endpoint su. `BASIC` Per ulteriori informazioni, consulta [Modalità di accesso agli endpoint](apigateway-security-policies.md#apigateway-security-policies-endpoint-access-mode).

## Invocazione di un'API privata utilizzando un nome di dominio personalizzato
<a name="apigateway-private-custom-domains-provider-invoke"></a>

Per invocare un'API privata utilizzando un nome di dominio personalizzato, è necessario che l'endpoint VPC disponga di un'associazione di accesso ai nomi di dominio con un nome di dominio personalizzato e il nome di dominio personalizzato deve consentire l'accesso affinché l'endpoint VPC possa invocarla. Per ulteriori informazioni, consulta [Nomi di dominio personalizzati per uso privato APIs in API Gateway](apigateway-private-custom-domains.md).

Non ci sono differenze tra invocare un nome di dominio privato personalizzato in un VPC Account AWS proprio o in un altro. Account AWS

### Uso del nome di dominio personalizzato
<a name="apigateway-private-custom-domains-invoke-1"></a>

All'interno del tuo VPC, puoi invocare la tua API utilizzando il nome di dominio personalizzato. L'esempio seguente è un comando curl per invocare il tuo nome di dominio personalizzato privato:

```
curl https://private.example.com
```

### Uso di nomi host DNS privati specifici dell'endpoint
<a name="apigateway-private-custom-domains-invoke-2"></a>

È possibile invocare l’API utilizzando il nome di dominio personalizzato come nome host DNS privato specifico dell’endpoint.

```
curl https://private-dns-hostname.execute-api.region.vpce.amazonaws.com/basepath -H 'Host:custom-domain-name'
```

L’esempio seguente è un comando curl per invocare il nome di dominio personalizzato utilizzando il nome host DNS privato specifico dell’endpoint:

```
curl https://vpce-123456-abc000.execute-api.us-east-2.vpce.amazonaws.com/test -H 'Host:private.example.com'
```

## Invocazione di un'API privata senza utilizzare un nome di dominio personalizzato
<a name="apigateway-private-api-invoke-without-custom-domain-name"></a>

Per invocare la tua API privata senza utilizzare un nome di dominio personalizzato, devi identificare i nomi DNS per l'API. La procedura seguente mostra come trovare i nomi DNS.

------
#### [ Console di gestione AWS ]

**Per trovare i nomi DNS**

1. Accedi Console di gestione AWS e apri la console Amazon VPC all'indirizzo. [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)

1. Nel pannello di navigazione principale, scegli **Endpoint**, quindi seleziona l'endpoint VPC dell'interfaccia per Gateway API.

1. Nel riquadro **Dettagli** verranno visualizzati 5 valori nel campo **Nomi DNS**. I primi tre sono i nomi DNS pubblici per l'API. Gli altri due sono i nomi DNS privati.

------
#### [ AWS CLI ]

Usa il seguente [describe-vpc-endpoints](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoints.html)comando per elencare i tuoi valori DNS.

```
aws ec2 describe-vpc-endpoints --vpc-endpoint-ids vpce-01234567abcdef012
```

I primi tre sono i nomi DNS pubblici per l'API. Gli altri due sono i nomi DNS privati.

------

### Invocazione di un'API privata utilizzando un alias Route53
<a name="apigateway-private-api-route53-alias"></a>

È possibile associare o dissociare un endpoint VPC da una REST API privata. Per ulteriori informazioni, consulta [(Facoltativo) Associazione o dissociazione di un endpoint VPC da una REST API privata](apigateway-private-api-create.md#associate-private-api-with-vpc-endpoint).

Dopo aver associato gli endpoint VPC alla tua API privata, puoi utilizzare il seguente URL di base per invocare l'API:

```
https://{rest-api-id}-{vpce-id}.execute-api.{region}.amazonaws.com/{stage}
```

Ad esempio, se hai configurato il metodo `GET /pets` per la fase `test` e se l'ID REST API era `01234567ab`, il tuo ID endpoint VPC era `vpce-01234567abcdef012` e la Regione era `us-west-2`, puoi invocare la tua API come:

```
curl -v https://01234567ab-vpce-01234567abcdef012.execute-api.us-west-2.amazonaws.com/test/pets
```

### Invocazione di un'API privata utilizzando i nomi DNS privati
<a name="w2aac15c20c17c17b9b9"></a>

Se hai abilitato il DNS privato, puoi accedere all'API privata utilizzando i seguenti nomi DNS privati:

```
{restapi-id}.execute-api.{region}.amazonaws.com
```

L'URL di richiamata di base dell'API è nel formato seguente:

```
https://{restapi-id}.execute-api.{region}.amazonaws.com/{stage}
```

Ad esempio, se hai configurato il metodo `GET /pets` per la fase `test` e se l'ID REST API era `01234567ab` e la tua Regione era `us-west-2`, puoi invocare la tua API privata inserendo il seguente URL in un browser:

```
https://01234567ab.execute-api.us-west-2.amazonaws.com/test/pets
```

In alternativa, puoi utilizzare il seguente comando cURL per invocare l'API privata:

```
curl -X GET https://01234567ab.execute-api.us-west-2.amazonaws.com/test/pets 
```

**avvertimento**  
Se abiliti il DNS privato per il tuo endpoint VPC, non sarai in grado di accedere all'endpoint pubblico predefinito. APIs Per ulteriori informazioni, consulta [Perché non riesco a connettere un endopoint VPC di API Gateway alla mia API pubblica?](https://repost.aws/knowledge-center/api-gateway-vpc-connections).

### Invoca un'API privata utilizzando Direct Connect
<a name="w2aac15c20c17c17b9c11"></a>

Puoi utilizzarlo Direct Connect per stabilire una connessione privata dedicata da una rete locale ad Amazon VPC e accedere al tuo endpoint API privato tramite tale connessione utilizzando nomi DNS pubblici.

Puoi anche utilizzare nomi DNS privati per accedere alla tua API privata da una rete locale configurando un endpoint in Amazon Route 53 Resolver entrata e inoltrando tutte le query DNS del DNS privato dalla tua rete remota. Per ulteriori informazioni, consulta [Inoltro delle query DNS in entrata al tuo indirizzo nella](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-forwarding-inbound-queries.html) *Amazon* Route 53 VPCs Developer Guide.

### Invocazione di un'API privata tramite nomi host DNS pubblici specifici dell'endpoint
<a name="apigateway-private-api-public-dns"></a>

Puoi accedere all'API privata tramite nomi host DNS specifici dell'endpoint Si tratta di nomi host del DNS pubblico che contengono l'ID dell'endpoint VPC o l'ID dell'API per la tua API privata.

L'URL di base generato è nel formato seguente:

```
https://{public-dns-hostname}.execute-api.{region}.vpce.amazonaws.com/{stage}
```

Ad esempio, se hai impostato il `GET /pets` metodo per lo `test` stage e il tuo ID API REST era`abc1234`, il suo hostname DNS pubblico era e la tua regione sì `vpce-def-01234567``us-west-2`, puoi richiamare la tua API privata utilizzando il suo VPCe ID utilizzando l'`Host`intestazione in un comando cURL:

```
curl -v https://vpce-def-01234567.execute-api.us-west-2.vpce.amazonaws.com/test/pets -H 'Host: abc1234.execute-api.us-west-2.amazonaws.com'
```

In alternativa, puoi invocare la tua API privata tramite il relativo ID utilizzando l'intestazione `x-apigw-api-id` in un comando cURL con il seguente formato:

```
curl -v https://{public-dns-hostname}.execute-api.{region}.vpce.amazonaws.com/{stage} -H 'x-apigw-api-id:{api-id}'
```