Android-сервер «SSLPeerUnverifiedException: нет сертификата однорангового узла» - PullRequest
1 голос
/ 11 марта 2012

так что это для проекта, который я делаю для моей школы, в котором нам нужен бэкэнд.наша текущая настройка заключается в том, что передний план - это приложение для Android, тогда как бэкэнд - это база данных mySQL, расположенная на серверах моей школы.Предполагается, что приложение для Android взаимодействует с базой данных mySQL с помощью php-скрипта.

мой php-скрипт в настоящее время жестко задан для возврата одной строки из базы данных mySQL в формате JSON.

мой код Android выглядит следующим образом:

public static final String KEY = "URL of my PHP script";
InputStream is = null;
String result = "";
try{

        HttpClient httpclient = new DefaultHttpClient();
        HttpGet request = new HttpGet();
        request.setURI(new URI(KEY));
        Log.d(null,"there");
        HttpResponse response = httpclient.execute(request);
        Log.d(null, "here");
        HttpEntity entity = response.getEntity();
        is = entity.getContent();

}catch(Exception e){
        Log.e("log_tag", "Error in http connection "+e.toString());
}

Однако я получаю исключение в строке

HttpResponse response = httpclient.execute(request);

, в котором говорится: Нет сертификата однорангового узла.

Кто-нибудь знает, что с ним не так и как это исправить?

1 Ответ

0 голосов
/ 12 марта 2012

У меня та же проблема.Эта ссылка работала для части моих потребностей.http://www.knowledgebit.appspot.com/zahangirbd/TopicView.action;jsessionid=E2BZt_6bp4uFFbMyq42gWg?id=56001

однако, все еще есть проблема с некоторыми ссылками (я считаю, что я не предоставляю надлежащий сертификат)

РЕДАКТИРОВАТЬ: так получается, что порядок сертификатов был проблемой,

проверьте это, это помогло мне .. Apache HttpClient на Android создает CertPathValidatorException (IssuerName! = SubjectName)

...