# Utiliser des variables de contexte dans les URL d'endpoints REST dans Data Services

Les variables de contexte sont supportées dans le fournisseur de services REST, tout comme les endpoints consommateur dans les services de données. Cela permet d'exécuter plusieurs services qui intéragissent ensemble, localement dans Studio Talend, tout en contextualisant les endpoints afin de pouvoir déployer les services dans plusieurs environnements et utilisant différents contextes.

Pour plus de technologies supportées par Talend, consultez [Composants Talend](https://help.qlik.com/talend/r/fr-FR/7.3/components/esb-rest).

Vous pouvez utiliser des variables de contexte dans les URL des endpoints des composants tRESTRequest, tRESTClient et cREST. Il peut s'agir d'un chemin absolu ou relatif.

Par exemple, les variables de contexte suivantes sont définies dans Studio Talend :

| Contexte | Valeur |
| --- | --- |
| context.full\_a | http://localhost:8090/services/customers |
| context.full\_b | http://localhost:8090/customers |
| context.full\_c | http://localhost:8090/any/customers |
| context.url\_a | customer |
| context.url\_b | /services/customers |
| context.port\_a | 8090 |
| context.port\_b | 8091 |

Si vous précisez l'URL de l'endpoint dans les variables de contexte, le service sera exposé aux adresses suivantes :

| Endpoint | Studio | Runtime | Microservice(app/docker) |
| --- | --- | --- | --- |
| context.full\_a | http://localhost:8090/services/customers | http://localhost:8090/services/customers | http://localhost:8090/services/customers |
| context.full\_b | http://localhost:8090/customers | http://localhost:8090/customers | http://localhost:8090/customers |
| context.full\_c | http://localhost:8090/any/customers | http://localhost:8090/any/customers | http://localhost:8090/any/customers |
| context.url\_a | http://localhost:8090/customers | http://localhost:8040/services/customers | http://localhost:8065/services/customers |
| context.url\_b | http://localhost:8090/services/customers | http://localhost:8040/services/customers | http://localhost:8065/services/customers |
| "http://localhost:"+ context.port\_b + context.url\_b | http://localhost:8091/services/customers | http://localhost:8091/services/customers | http://localhost:8091/services/customers |
| context.url\_a + "/rest" | http://localhost:8090/customers/rest | http://localhost:8040/services/customers/rest | http://localhost:8065/services/customers/rest |
| "http://localhost:8090" + context.url\_a + "/" + System.getProperty("user.name") | http://localhost:8090/customers/&lt;DynamicOSLoginUserName&gt; | http://localhost:8040/services/customers/&lt;DynamicOSLoginUserName&gt; | http://localhost:8065/services/customers/&lt;DynamicOSLoginUserName&gt; |

Note InformationsRemarque : Si les endpoints contiennent du code Java, comme System.getProperty, l'utilisateur ou l'utilisatrice devra paramétrer ces propriétées avant d'exécuter le bundle dans Talend Runtime ou dans Microservice. Autrement, une erreur indiquera que ces propriétés sont manquantes.

### Dans cette section

* [Choisir un endoint de service par contexte dans Talend Runtime](https://help.qlik.com/talend/fr-FR/components/7.3/esb-rest/trestclient-choosing-service-endpoint-by-context-in-talend-runtime)

**Concepts associés**

[tRESTClient](https://help.qlik.com/talend/fr-FR/components/7.3/esb-rest/trestclient "Ce composant interagit avec des fournisseurs de services Web RESTful, en envoyant des requêtes HTTP et HTTPS, à l'aide de CXF (JAX-RS) et en obtenant les réponses correspondantes.")