Обратите внимание, что заданные вами ключи API (например, 7960778b79e547969a9c201ceeda50d8) считаются конфиденциальной информацией, как и пароль.
Эти ключи используются для доступа к API и не связаны с хранилищем ключей / доверенными каталогами NiFi, которые используются для согласования SSL.Использование Java cacerts в этом случае является правильным, но вам не нужно добавлять ключ API в хранилище доверенных сертификатов.
На этой странице описывается форма, которую должен принять запрос: https://developer.wmata.com/docs/services/5763fa6ff91823096cac1057/operations/5763fb35f91823096cac1058#TrainPosition
Я предлагаюВы прочитали, как использовать веб-API и делать веб-запросы, чтобы затем понять, как используются ваши ключи API.Они приводят пример скручивания внизу:
curl -v -X GET "https://api.wmata.com/TrainPositions/TrainPositions?contentType={contentType}"
-H "api_key: {subscription key}"
--data-ascii "{body}"
{ключ подписки} - это ваш ключ API, {contentType} - это тип содержимого ответа HTTP.Если вы не знакомы с этими терминами, вам может понадобиться изучить их.Я рекомендую сначала выполнить приведенную выше команду curl, а затем перенести ее на NiFi.
curl -v -X GET "api.wmata.com/TrainPositions/TrainPositions?contentType=json" -H "api_key:e13626d03d8e4c03ac07f95541b3091b "у меня работает.(Это тестовый API-ключ с веб-сайта wmata).
В InvokeHTTP вы бы добавили свойство процессора (нажмите символ плюса вверху справа), называемое api_key, со значением, установленным для вашего ключа подписчика (я не понимаюне знаю, является ли это первичным ключом), и установите для свойства «Атрибуты для отправки» значение «api_key».Это отправит атрибут api_key (ключ) в качестве заголовка с именем api_key, как мы это делали выше в curl с -H "api_key: e136 ...".