Получение API (развернутого в IBM APIC 5.0) для вызова приложения Loopback (развернутого на коллективных участниках)
Я использую IBM APIC 5.0
Я настроил следующее. 1. IBM HTTP Server, маршрутизация подключаемого модуля WAS к MicroGateway 2. MicroGateway, работающий в коллективе 3. IBM HTTP Server, маршрутизация подключаемого модуля WAS к приложению провайдера 4. Приложение поставщика, работающее в коллективе
Сценарий 1 - URL-адрес приложения Invoke Provider
- HTTPS-запрос к IHS1/ плагин
- Настройте API для прямого вызова URL (например, http: //: 9081) без SSL
- IHS1/ Plugin (svr1: 443)> MicroGateway (svr1: 9081)> Приложение Loopback (svr2: 9081)
- Это работает.
Сценарий 2 - приложение Invoke Provider, косвенно через HTTP-сервер
- HTTPS-запрос к IHS1/ плагин
- Установите заголовок узла соответственно (как описано в KnowledgeCenter)
- Сконфигурируйте API для вызова URL IHS (например, https://svr1/) с SSL
- IHS1/ Plugin (svr1: 443)> MicroGateway (svr1: 9081)> IHS2/Plugin (svr2:443) > Loopback App (svr2:9081).
- Ошибка 503.
Трассировка ihs2 / plugin показывает следующее:
[29 / Sep / 2016: 12: 55: 59.40468] 00007ea3 fdd0b700 - ODR: DEBUG: matchVHost: enter - host = apidemo-57d22263e4b0171525a5042d-1474392568657.xxx, порт =443 [29/Sep/2016:12:55:59.40470] 00007ea3 fdd0b700 - ODR:DEBUG: matchLongestURI: виртуальный хост
Это показывает, что настроенный заголовок узла совпадает, и он может найти сервер приложений провайдера. Означает, что динамическая маршрутизация работает в определенной степени.
[29 / Сен / 2016: 12: 55: 59,40565] 00007ea3 fdd0b700 - УСО: ОТЛАДКА: checkIfTransportIsValid: конечная точка имя = '/ клетка / defaultCollective / узел /,% 2Fhome% 2Fusers% 2Fadmin% 2Fwlpn / сервер / apidemo-57d22263e4b0171525a5042d-1474392568657 -1 / транспорт /Https', порт =9081 действителен
Это показывает, что 9081 является допустимой деталью и выбран Https.
[29 / Sep / 2016: 12: 55: 59.40971] 00007ea3 fdd0b700 - ОШИБКА: lib_stream: openStream: Сбой в r_gsk_secure_soc_init: GSK_ERROR_SOCKET_CLOSED(gsk rc = 420) СЕРТИФИКАТ ПАРТНЕРА DN= Нет информации, доступной 29 сентября = нет информации, Серийный номер = /2016:12:55:59.40982] 00007ea3 fdd0b700 - ОШИБКА: GSK_INVALID_HANDLE [29/ сен /2016:12:55:59.40998] 00007ea3 fdd0b700 - ОШИБКА: ws_common: websphereGetStream: не удалось открыть поток
Тогда придет ошибка. Это может ошибка SSL. Я подозреваю, что в настоящее время приложение провайдера не включено с SSL.
Вопрос о том, как решить эту проблему
1) Как включить петлевое приложение с SSL. Я следую этой инструкции, но она не работает для меня, потому что мое петлевое приложение развернуто в Collectives. https://github.com/strongloop/loopback-example-ssl
2) Как настроить динамическую маршрутизацию для использования http-трафика без SSL?