С помощью адаптера Worklight я могу изменить домен и порт для процедуры во время выполнения?

Я пишу приложение worklight, и оно будет подключаться к различным базовым службам, которые будут определены потребителем после установки. Я хотел бы использовать адаптеры для подключения клиента к внутренним службам, но хочу избежать редактирования и обновления адаптера для каждого подключающегося пользователя.

По сути, у каждого клиента есть работающий сервер, к которому я хочу подключиться, однако он будет работать на разных портах и ​​доменах для каждого клиента. Я хочу, чтобы они могли передавать их адаптеру, чтобы разрешить общий вызов на внутренний сервер клиента.

Есть ли способ, которым я могу программно изменить домен и порт, которые я установил в xml-файле адаптера внутри javascript адаптера для каждой процедуры, чтобы пользователь мог указать серверу, куда отправить запрос?

Если нет способа сделать это - вы бы порекомендовали подключиться напрямую к бэкэнду и избегать использования адаптеров рабочего освещения?

Большое спасибо,

Энди

1 ответ

Решение

Как вы правильно догадались - клиент (приложение) отправляет запрос процедуры адаптера на сервер Worklight, который затем выполняется в зависимости от того, для чего он запрограммирован, подключается к тому месту, где его просили (как определено в XML-коде адаптера). connectionPolicy элемент). Это не может быть изменено во время выполнения / после развертывания.

Я не знаю, что должно делать ваше приложение, поскольку сценарий не совсем понятен... но вы можете предварительно развернуть все необходимые адаптеры для всех различных серверных частей и их набора параметров подключения, а также на стороне клиента. написать некоторую логику, чтобы определить, какой из адаптеров использовать. Здесь определенно будет дублирование адаптера, но это не должно создавать слишком много накладных расходов во время выполнения (но да, в отношении удобства сопровождения).

И да, вы также можете создать свой собственный "интерфейс", чтобы позволить конечному пользователю изменять параметры соединения перед отправкой прямого запроса бэкэнду (то есть не использовать адаптеры Worklight), но это не похоже на что-то конечный пользователь должен издеваться с.

Другие вопросы по тегам