У минулих проектах, над якими я працював, кінцева точка була відносною властивістю. Тобто це може бути або не може бути додане, але воно завжди містило protocol://host:port/partOfThePath
.
Якщо служба, яка викликається, мала до неї динамічну частину, наприклад, a ?param=dynamicValue
, ця частина буде додана до кінцевої точки. Але багато разів кінцева точка може бути використана як така, що не потребує внесення змін.
Важливо розуміти, що не є кінцевою точкою і як це допомагає. Наприклад, альтернативним способом передачі інформації, що зберігається в кінцевій точці, було б зберігання різних частин кінцевої точки в окремих властивостях. Наприклад:
hostForServiceA=someIp
portForServiceA=8080
pathForServiceA=/some/service/path
hostForServiceB=someIp
portForServiceB=8080
pathForServiceB=/some/service/path
Або якщо один і той же хост і порт у кількох службах:
host=someIp
port=8080
pathForServiceA=/some/service/path
pathForServiceB=/some/service/path
У цих випадках у вашому коді потрібно створити повну URL-адресу як таку:
String url = "http://" + host + ":" + port + pathForServiceA + "?" + dynamicParam + "=" + dynamicValue;
У договорі це може зберігатися як кінцева точка як така
serviceAEndpoint=http://host:port/some/service/path?dynamicParam=
І так, ми багато разів зберігали кінцеву точку до і включаємо '='. Це призводить до такого коду:
String url = serviceAEndpoint + dynamicValue;
Сподіваюся, що проливає трохи світла.