При отправке сертификата безопасности через securityManager в вызовах HTTPS желаемый вывод не получен

Согласно документу appcelerator Modules.Https, когда через диспетчер безопасности передается недействительный защищенный сертификат, выдается сообщение об ошибке "Не удалось проверить листовой сертификат с предоставленным открытым ключом". Но это работает нормально только с первым запросом

При передаче действительного безопасного сертификата для первого запроса URL-адреса и недействительного сертификата для следующего запроса URL-адреса ошибка не регистрируется.

EX:

var url1 = "http://www.appcelerator.com/";
    var securityManager = https.createX509CertificatePinningSecurityManager([
    {
        url: url1,
        serverCertificate: "appcelerator.com.der",
    }
]);
    var httpClient = Ti.Network.createHTTPClient({
    onload: Success,
    onerror: failure,
    timeout : 5000,
    securityManager: securityManager,
    validatesSecureCertificate : true,
 });
httpClient.open("GET", url1); 
httpClient.send();

var url2 = "https://www.google.com/";
    var securityManager = https.createX509CertificatePinningSecurityManager([
    {
        url: url2,
        serverCertificate: "appcelerator.com.der",
    }
]);
    var httpClient = Ti.Network.createHTTPClient({
    onload: Success,
    onerror: failure,
    timeout : 5000,
    securityManager: securityManager,
    validatesSecureCertificate : true,
 });
httpClient.open("GET", url2); 
httpClient.send();

Теперь в приведенном выше примере для второго запроса должен быть вызван метод ошибки, потому что мы передаем сертификат appcelerator менеджеру безопасности. Но в коде он напрямую вызывает метод успеха, не сообщая о каких-либо ошибках.

0 ответов

Другие вопросы по тегам