HTTP-запросы к веб-серверу с самоподписанным сертификатом - PullRequest
0 голосов
/ 20 февраля 2020

Мой веб-сервер, на котором я работаю, имеет собственный сертификат. У меня есть localhost.crt

. Я просматривал эту страницу, чтобы исправить проблемы с HTTP-запросами:

https://developer.android.com/training/articles/security-config

Это мой network_security_config.xml:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">localhost</domain>
        <trust-anchors>
            <certificates src="@raw/localhost"/>
        </trust-anchors>
    </domain-config>
</network-security-config>

В нем говорится, что

Добавить самоподписанный или неопубликованный сертификат CA c, в формате PEM или DER, в res / raw /my_ca.

Итак, что я сделал, я зашел на этот сайт https://www.sslshopper.com/ssl-converter.html, чтобы конвертировать localhost.crt в localhost.der. Затем я создаю папку raw в папке root resources моего приложения и вставляю туда localhost.der. Я добавил это к моему config.xml:

<resource-file src="resources/raw/localhost.der" target="app/src/main/res/raw/localhost.der" />

Однако, я все еще получаю эту ошибку:

Не удалось установить соединение TLS: javax. net .ssl.SSLHandshakeException: java .security.cert.CertPathValidatorException: доверительный якорь для пути сертификации не найден.

Я думал, что это исправит эту ошибку, но это не так. Я не уверен, что я делаю неправильно. Кто-нибудь может помочь?

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