#flutter #dart #request #flutter-dependencies #dart-pub
Вопрос:
Docker Engine предоставляет зашифрованный API (работает на HTTPS (SSL / TLS)), который требует:
- ca.pem (сертификат CA)
- cert.pem (сертификат клиента)
- key.pem (ключ клиента) при отправке запроса API.
https://docs.docker.com/engine/security/protect-access/
В python я могу передавать эти сертификаты, используя метод запросов, для отправки запроса на сервер (на стороне клиента):
import requests
CA_CERT = './ssl-tls-keys/ca.pem'
CLIENT_CERT = './ssl-tls-keys/cert.pem'
CLIENT_KEY = './ssl-tls-keys/key.pem'
URL = 'https://65.0.95.227:2376/containers/json?all=1'
def get_container_list():
response = requests.get(url=URL, cert=(CLIENT_CERT, CLIENT_KEY),
verify=CA_CERT)
return response.json()
def print_containers_data():
for container in get_container_list():
print('Container [Id: %s, Name: %s, Status: %s]' %
(container['Id'], container['Names'][0], container['Status']))
print_containers_data()
Используя curl, мы можем отправить запрос с помощью:
curl https://$HOST:2376/images/json
--cert cert.pem
--key key.pem
--cacert ca.pem
Я не могу понять, как я могу использовать эти 3 сертификата при отправке запроса https в API Docker Engine в flutter.
Я пытался использовать пакеты HTTP и DIO, но там ничего не нашел.