Как обойти ошибки SSL на Angular2-Nativescript? - PullRequest
0 голосов
/ 08 января 2019

Я новичок в NativeScript, поэтому мне нужна рука с обходом для iOS и Android. Я попытался посмотреть в Google, но я исчерпал себя, пытаясь найти решение, которое будет достаточно для Angular2 +.

У меня есть сертификат SSL с подстановочным знаком от GoDaddy, поэтому я не могу использовать nativescript-https (https://github.com/gethuman/nativescript-https/issues/14 для их выпуска на github).

Реальный пример, где я могу прочитать код и понять, где все происходит, было бы здорово, я имею в виду, я попытался изучить https://discourse.nativescript.org/t/how-to-ignore-invalid-ssl-certificate-in-nativescript/1924,, но все это не имеет смысла для меня, так как я не знаю где начать с кода при использовании этого примера.

EDIT: Я попытался с помощью nativescript-https отключить SSLPining, но безуспешно. На моем app.module.ts

import * as application from 'application';
import * as platform from 'platform';
import * as HTTPS from 'nativescript-https';

var disabledSSLError = () => {
    if(platform.isAndroid){
        application.android.startActivity = () => {
            HTTPS.disableSSLPinning();
        }
    }
};

disabledSSLError();

Однако, когда я отправляю сообщение

    "message": "Http failure response for (unknown url): 0 Unknown Error",
JS:   "error": {
JS:     "originalStack": "Error: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.\n    at new ZoneAwareError (file:///data/data/org.nativescript.myapp/files/app/tns_modules/nativescript-angular/zone-js/dist/zone-nativescript.js:1298:33)\n    at onRequestComplete (file:///data/data/org.nativescript.myapp/files/app/tns_modules/tns-core-modules/http/http-request/http-request.js:45:34)\n    at Object.onComplete (file:///data/data/org.nativescript.myapp/files/app/tns_modules/tns-core-modules/http/http-request/http-request.js:37:13)",

1 Ответ

0 голосов
/ 08 января 2019

Вы можете использовать https. Я думаю, что вы неправильно поняли эту проблему. Эта проблема говорит только о том, что если вы используете пиннинг, то вы не можете использовать подстановочный символ https (но вам не нужно его использовать).

Прикрепление SSL добавляет дополнительный уровень безопасности, но если вы только начинаете, оно вам не понадобится. ссылка

Просто продолжайте стандартные https-запросы с использованием библиотеки HttpClient, и все будет в порядке.

...