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

ESB REST

EnrichVersion
Cloud
7.3
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
EnrichPlatform
Studio Talend
task
Création et développement > Systèmes tiers > Composants ESB > Composants ESB REST
Gouvernance de données > Systèmes tiers > Composants ESB > Composants ESB REST
Qualité et préparation de données > Systèmes tiers > Composants ESB > Composants ESB REST

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.

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/<DynamicOSLoginUserName> http://localhost:8040/services/customers/<DynamicOSLoginUserName> http://localhost:8065/services/customers/<DynamicOSLoginUserName>
Remarque : 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.