Доступ к внешнему API в HyperLedger Fabric - PullRequest
0 голосов
/ 25 апреля 2018

Я пытаюсь получить доступ к следующим API-интерфейсам через цепочку кодов hyperLedger Fabric: http://api.open -notify.org / astros.json.However Я обнаружил следующую ошибку

паника: Получить http://api.open -notify.org / astros.json : прокси-соединение tcp: набрать tcp: тайм-аут ввода-вывода

Я пробовал несколько способов разрешения прокси-сервера, но время ожидания истекло.

Кто-нибудь может предложить исправить?

Заранее спасибо.

1 Ответ

0 голосов
/ 19 октября 2018

Как правило, вы не должны вызывать внешние API изнутри hyperledger, так как это может привести к конфликтам между равноправными узлами.Предполагая, что каждый узел должен выполнить запрос, количество запросов экспоненциально увеличивается с увеличением количества узлов, задействованных в вашей системе.

В документации сказано, что внешние запросы должны выполняться. При этом, насколько я могу судить, документация по внешним запросам не была обновлена ​​для текущей версии hyperledger.https://hyperledger.github.io/composer/v0.19/integrating/call-out

Здесь отмечены консенсусные соображения при доступе к внешним API https://hyperledger.github.io/composer/v0.19/integrating/call-out#consensus-considerations

Обходное решение, которое я использовал, - это настроить второй докер-контейнер, на котором не работает hyperledger для выполнения APIзапросы на порт 3001, сопоставляют результаты, а затем отправляют их в Hyperledger, настроенный со службой REST на порт 3000.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...