1

Есть ли способ узнать, работает ли адаптер на сервере разработки MobileFirst или был ли он развернут на полный сервер?Как узнать, работает ли адаптер на сервере разработки MobileFirst

--Update--

В частности, я хочу, чтобы выяснить, из самого кода адаптера, если адаптер выполняется в машине разработчика или если она выполняется в WAS/Tomcat/non-development Liberty Профиль.

Я хочу знать это, чтобы иметь возможность оставлять незащищенные некоторые процедуры адаптера, предназначенные для тестирования; Это тестирование процедуры будет выглядеть аналогично этому

function testThisAdapter() { 
    if (isDevelopmentServer()) { 
     return doMyTestStuff(); 
    } else { 
     return {isSuccess: false, errors: ['nice try']}; 
    } 
} 

--Update--

Это то, что я использую с ответом Идан в

function isDevelopmentServer() { 
    var clientRequest = WL.Server.getClientRequest(); 
    var url = clientRequest.getRequestURI(); 
    var pattern = /\/dev\/invoke/; 
    return pattern.test(url); 
} 

ответ

2

Update: При использовании 6.3 (или ранее) Studio MoblieFirst Development Server, все запросы адаптеров проходят через сервлет разработки. URL-адрес запроса будет содержать /dev/: http://serverIp:10080/my-project-name/dev/invoke?adapter=my-adapter-name&procedure=my-procedure-name. См. Здесь: Endpoints of the MobileFirst Server production server

Это единственный дифференциатор, о котором я знаю. Я не уверен, что вы можете использовать это в своем коде адаптера. Возможно, на клиенте, если вам удастся получить этот URL-адрес или проверить его существование, вы можете разработать соответствующую логику для приложения.


Смотрите следующую документацию пользователя тему: Vitality queries for checking server health

Используйте IBM® Worklight® жизнеспособность запросов для запуска проверки работоспособности вашего сервера , и определить статус жизнеспособность вашего сервера.

Обычно вы используете жизненные запросы IBM Worklight от балансировщика нагрузки или от приложения мониторинга (например, Patrol).

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

Для адаптера, запрос будет: http://<server>:<port>/<publicWorkLightContext>/ws/rest/vitality?app=MyApp&adapter=MyAdapter

Пользователь тема документация содержит более подробную информацию и примеры.

+0

Мои извинения, Идан: название моего вопроса вводит в заблуждение. Я редактирую вопрос, чтобы уточнить его намерение. Спасибо за ваше время. – xverges

+0

Используя CLI, 'mfp invoke my-adapter: myfunction' приводит к вызову' http: // serverIp: 10080/my-project-name/invoke', поэтому проверка **/dev/** не распространяется все случаи – xverges

Смежные вопросы