首页 > 解决方案 > 排球 405 错误:com.android.volley.ClientError

问题描述

这是我的代码,它适用于除一个之外的所有 api,并引发 405 错误

public void postDataVolley(final String requestType, String url, final HashMap params){
        try{
            StringRequest stringRequest=new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
                @Override
                public void onResponse(String response) {
                    if (mResultCallBack!=null){
                        mResultCallBack.notifySuccess(requestType,response);
                    }
                    Log.i("Volley Response",response);
                }
            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    if(mResultCallBack!=null){
                        mResultCallBack.notifyError(requestType,error);
                    }
                    Log.i("Error Response", String.valueOf(error));
                }
            }){
                @Override
                protected Map<String, String> getParams() throws AuthFailureError {
                    Map<String,String> paramsPass=params;
                    return paramsPass;
                }
            };
            MySingleton.getInstance(mContext).addToRequestQueue(stringRequest);
        }catch (Exception e){

        }
    }

我使用其他类的代码调用了上述方法,如下所示

        volleyService=new VolleyService(this,mContext);
        volleyService.postDataVolley("POST", url, params);

当我搜索 405 错误时,每个人都建议我将方法 POST 更改为 GET 但 api 需要 POST 方法..

什么是 405 错误..?

我该如何解决

标签: androidandroid-volley

解决方案


405 Method Not Allowed是一个HTTP响应状态代码,表明指定的请求HTTP方法已被服务器接收并识别,但服务器拒绝了请求资源的特定方法。此消息与404 Not Found code.

404 Not Found error表示无法找到所请求的资源,并且通常是由于 URL 不正确,或者试图访问客户端没有足够权限的资源。相反,405代码响应确认请求的资源有效且存在,但客户端HTTP在请求期间使用了不可接受的方法。

更多请点击这里


推荐阅读