

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.

# Méthodes d'assistance générales
<a name="general-helper-methods"></a>

Cette page fournit des méthodes d'assistance supplémentaires dans CloudFront Functions. Pour utiliser ces méthodes, créez une CloudFront fonction à l'aide de JavaScript Runtime 2.0.

```
import cf from 'cloudfront';
```

Pour de plus amples informations, veuillez consulter [JavaScript fonctionnalités d'exécution 2.0 pour CloudFront Functions](functions-javascript-runtime-20.md).

## `edgeLocation`métadonnées
<a name="edge-location-metadata"></a>

Cette méthode nécessite l'utilisation du `cloudfront` module.

**Note**  
Vous ne pouvez utiliser cette méthode que pour les fonctions de demande de consultation. Pour les fonctions de réponse du spectateur, cette méthode est vide.

Utilisez cet JavaScript objet pour obtenir le code de l'aéroport de localisation périphérique, la région de [cache périphérique régionale](HowCloudFrontWorks.md#CloudFrontRegionaledgecaches) attendue ou l'adresse IP CloudFront du serveur utilisée pour traiter la demande. Ces métadonnées ne sont disponibles que lors du déclencheur de l'événement de demande du spectateur.

```
cf.edgeLocation = {
    name: SEA
    serverIp: 1.2.3.4
    region: us-west-2
}
```

L'`cf.edgeLocation`objet peut contenir les éléments suivants :

**name**  
Le [code IATA](https://en.wikipedia.org/wiki/IATA_airport_code) à trois lettres de l'emplacement périphérique qui a traité la demande.

**IP du serveur**  
 IPv6 Adresse IPv4 ou du serveur qui a traité la demande.

**region**  
Le cache périphérique CloudFront régional (REC) que la demande est *censée* utiliser en cas d'échec du cache. Cette valeur n'est pas mise à jour si le REC attendu n'est pas disponible et qu'un REC de sauvegarde est utilisé pour la demande. Cela n'inclut pas l'emplacement d'Origin Shield utilisé, sauf dans les cas où le REC principal et l'Origin Shield se trouvent au même endroit.

**Note**  
CloudFront Les fonctions ne sont pas invoquées une seconde fois lorsqu'elles CloudFront sont configurées pour utiliser le basculement d'origine. Pour de plus amples informations, veuillez consulter [Optimisez la haute disponibilité grâce au basculement CloudFront d'origine](high_availability_origin_failover.md).

## Méthode `rawQueryString()`
<a name="raw-query-string-method"></a>

Cette méthode ne nécessite pas le `cloudFront` module.

Utilisez `rawQueryString()` cette méthode pour récupérer la chaîne de requête non analysée et non modifiée sous forme de chaîne.

**Demande**

```
function handler(event) {
    var request = event.request;
    const qs = request.rawQueryString();
}
```

**Réponse**

Renvoie la chaîne de requête complète de la demande entrante sous forme de valeur de chaîne sans le début`?`. 
+ S'il n'y a pas de chaîne de requête, mais `?` que celle-ci est présente, les fonctions renvoient une chaîne vide. 
+ S'il n'y a pas de chaîne de requête et si elle `?` n'est pas présente, la fonction revient`undefined`.

**Cas 1 : chaîne de requête complète renvoyée (sans début`?`)**  
URL de la demande entrante : `https://example.com/page?name=John&age=25&city=Boston`  
`rawQueryString()`renvoie : `"name=John&age=25&city=Boston"`

**Cas 2 : chaîne vide renvoyée (lorsqu'elle `?` est présente mais sans paramètres)**  
URL de la demande entrante : `https://example.com/page?`  
`rawQueryString()`renvoie : `""`

**Cas 3 : `undefined` renvoyé (aucune chaîne de requête et non`?`)**  
URL de la demande entrante : `https://example.com/page`  
`rawQueryString()`renvoie : `undefined`