Android应用在POST请求中出错:
com.android.volley.NoConnectionError: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException:信任锚 未找到证书路径。
谷歌搜索后,我发现此错误可能与未知的证书颁发机构有关。
所以我的问题是:
您使用哪种证书颁发机构服务来防止此错误?
这是我的POST代码,也许有一些错误? - 我在我的网址中使用了httpS。
private void userRegistration(){
StringRequest stringRequest = new StringRequest(Request.Method.POST, url + REG, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(getApplicationContext(), "Все прошло хорошо!", Toast.LENGTH_SHORT).show();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getApplicationContext(), error.toString(), Toast.LENGTH_SHORT).show();
}
}){
@Override
protected java.util.Map<String, String> getParams() throws AuthFailureError {
java.util.Map<String, String> params = new HashMap<String, String>();
params.put(EMAIL, userEmail);
params.put(PASSWORD, userPass);
return params;
}
};
final RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
我已经读过这些:
Official android tutorial关于这个错误。
有关stackoverflow的一些相关问题(Q1和Q2)。 Q1 (BNK答案)实际上对我有用并解决了问题,但我 相信在Android中使用HTTPS有更好的方法。
This one对我没用。
请帮帮我!使用Volley使用https的常用方法(最佳实践)是什么?也许它只是从知名当局购买证书?