HTTPS звонок не идёт в Cordova android релиз apk - PullRequest
0 голосов
/ 31 октября 2018

Я не могу опубликовать HTTP-звонок в Android-выпуске apk. У меня есть приложение для Android, которое делает https вызов для входа в систему, запрос даже не достигает сервера. Однако это работает в отладочной версии apk (http). В журналах сервера не отображаются какие-либо ошибки или предупреждения, поскольку сам запрос не достигает сервера. АПК подписан с фактическим сертификатом SHA, который используется для размещения домена.

    loginHandler(value) {
    this.loader.display(true);  


        if (isNaN(value.email)) {
            value.email = value.email.toLowerCase();

        }
        else {
            value.email = value.email;

        }
        var loginValue = {
            'username': value.email,
            'password': value.password
        }


        this.loginService.loginService(loginValue)
        .subscribe(res => {
            this.loader.display(false);

            this.message = '';
            if (res.response.status === 'Success') {                    

            } else {
                this.errorMessage = res.response.validation;
                this.errorMessage == 'Email not verified. Please check your email.' 
                                        ? this.showResendVerification = true 
                                        : this.showResendVerification = false;
            }
            if (res.response.validation == "Email or phone number not verified.")
            {
                this.OTPHandler(value);
                this.router.navigate(['/otp-verification']);
            }
        });
}

1 Ответ

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

В отладочной сборке приложений Cordova для Android ошибки SSL игнорируются, поэтому вы можете получить доступ к любому событию сервера, если нет сертификата или поврежден сертификат (например, сервер разработки).

Он ведет себя по-разному для сборки выпуска, соединения https не будут работать, если на сервере:

  • без SSL-сертификата
  • самоподписанный сертификат
  • сертификат, доставленный администрацией, которой устройство не доверяет
  • сертификат доставлен для сервера / URL, отличного от того, к которому вы пытаетесь получить доступ.

Конечно, вы должны попытаться открыть браузер на устройстве и открыть URL-адрес https, который вы используете в своем приложении. Если вы получите предупреждение о безопасности, вы узнаете, что существует проблема с сертификатом сервера.

Вы также можете попытаться пропатчить исходники cordova, чтобы ошибки ssl не игнорировались даже при отладке см. Этот пост . (тогда ваши вызовы ssl должны прерваться даже при отладке)

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