SSLPeerUnverifiedException для HTTPS-запросов, если инициализированные запросы Parse
Я начал получать следующую ошибку Volley сразу после добавления функции Push через Parse.com:
com.android.volley.NoConnectionError: javax.net.ssl.SSLPeerUnverifiedException: Cannot verify hostname: xxxxx.yy
xxxxx.yy - хост, с которым я общаюсь по протоколу HTTPS. Способ установки соединения довольно обычный. Например, это вызывающая функция:
public static void login(final String token, final Activity activity) {
String requestUrl = AppConstant.LOGIN;
final HashMap<String, String> params = new HashMap<String, String>();
if (token != null && !token.isEmpty()) {
params.put("token", token);
}
params.put("useragent", AppConstant.USER_AGENT);
params.put("version", getVersionName(activity));
JsonFormRequest myRequest = new JsonFormRequest(
Request.Method.POST,
requestUrl,
params,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject jsonObject) {
...
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
...
}
}
);
MfApplication.getInstance().addToRequestQueue(myRequest, "tag_login_phone");
}
Добавляет запрос в очередь:
public <T> void addToRequestQueue(Request<T> req, String tag) {
getRequestQueue().add(req);
}
Очередь создается один раз следующим образом:
mRequestQueue = Volley.newRequestQueue(getApplicationContext());
Если я удалю следующий код инициализации Parse из моего класса Application, ошибка исчезнет:
Parse.initialize(this);
ParseInstallation.getCurrentInstallation().saveInBackground();
ParsePush.subscribeInBackground("general");
В чем причина проблемы и что можно сделать?
1 ответ
Для любых других людей с точно такой же проблемой: обновление версии Android Parse SDK до 1.13.1 решило эту проблему для меня.
Возможно несоответствие URL. URL-адрес запроса, который вы отправляете с Android, может использовать URL-адрес, например:https://domain/, но URL-адрес вашего сервера будет похож на http://domain/ Так что на вашем веб-сайте может не быть SSL, поэтому создается исключение. Надеюсь, это поможет