Google Volley ignores POST-Parameter

前端 未结 5 1034
情书的邮戳
情书的邮戳 2020-12-18 08:32

I\'m currently trying to send a simple POST-request via Google Volley to my server. Therefore I\'ve written the following lines of code:

Map

        
5条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-18 09:02

    Use this helper class:

    import java.io.UnsupportedEncodingException;
    import java.util.Map;    
    import org.json.JSONException;
    import org.json.JSONObject;    
    import com.android.volley.NetworkResponse;
    import com.android.volley.ParseError;
    import com.android.volley.Request;
    import com.android.volley.Response;
    import com.android.volley.Response.ErrorListener;
    import com.android.volley.Response.Listener;
    import com.android.volley.toolbox.HttpHeaderParser;
    
    public class CustomRequest extends Request {
    
    private Listener listener;
    private Map params;
    
    public CustomRequest(String url, Map params,
            Listener reponseListener, ErrorListener errorListener) {
        super(Method.GET, url, errorListener);
        this.listener = reponseListener;
        this.params = params;
    }
    
    public CustomRequest(int method, String url, Map params,
            Listener reponseListener, ErrorListener errorListener) {
        super(method, url, errorListener);
        this.listener = reponseListener;
        this.params = params;
    }
    
    protected Map getParams()
            throws com.android.volley.AuthFailureError {
        return params;
    };
    
    @Override
    protected Response parseNetworkResponse(NetworkResponse response) {
        try {
            String jsonString = new String(response.data,
                    HttpHeaderParser.parseCharset(response.headers));
            return Response.success(new JSONObject(jsonString),
                    HttpHeaderParser.parseCacheHeaders(response));
        } catch (UnsupportedEncodingException e) {
            return Response.error(new ParseError(e));
        } catch (JSONException je) {
            return Response.error(new ParseError(je));
        }
    }
    
    @Override
    protected void deliverResponse(JSONObject response) {
        // TODO Auto-generated method stub
        listener.onResponse(response);
        }
    }
    

提交回复
热议问题