Java 如何在Android中使用截击发送Post请求?

Java 如何在Android中使用截击发送Post请求?,java,android,android-volley,Java,Android,Android Volley,我发出这样的截击请求 btnSignUp.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //submitForm(); JsonObjectRequest jsonobjectRequest = new JsonObjectRequest(Request.Method.POS

我发出这样的截击请求

  btnSignUp.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {


            //submitForm();
            JsonObjectRequest jsonobjectRequest = new JsonObjectRequest(Request.Method.POST, URL, null, new Response.Listener<JSONObject>() {

                @Override
                public void onResponse(JSONObject response) {
                    //errorlabel.setText(response.toString());
                }
            }, new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {

                    errorlabel.setText("Invalid username / password");
                }

            }){
                @Override
                protected Map<String, String> getParams() throws AuthFailureError {
                    Map<String, String> params = new HashMap<String, String>();
                    params.put("email", "asd@asd.com");
                    params.put("password", "asd");



                    return params;
                }
            };
            errorlabel.setText(jsonobjectRequest.toString());
            requestQueue.add(jsonobjectRequest);

        }
    });




}
btnSignUp.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
//submitForm();
JsonObjectRequest JsonObjectRequest=新的JsonObjectRequest(Request.Method.POST,URL,null,new Response.Listener()){
@凌驾
公共void onResponse(JSONObject响应){
//errorlabel.setText(response.toString());
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
errorlabel.setText(“无效的用户名/密码”);
}
}){
@凌驾
受保护的映射getParams()引发AuthFailureError{
Map params=新的HashMap();
参数put(“电子邮件”)asd@asd.com");
参数put(“密码”、“asd”);
返回参数;
}
};
errorlabel.setText(jsonobjectRequest.toString());
add(jsonobjectRequest);
}
});
}
但是我从服务器收到一条错误消息,说电子邮件/密码无效

我已经设置了正确的参数。我在邮递员身上测试过,它在那里工作。这是一个截图

截图


我也遇到了同样的问题,我尝试了字符串请求,它可以正常工作

 StringRequest jsonObjRequest = new StringRequest(Request.Method.POST,
               URL,
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {

                    }
                }, new Response.ErrorListener() {

            @Override
            public void onErrorResponse(VolleyError error) {
            }
        }) {

            @Override
            public String getBodyContentType() {
                return "application/x-www-form-urlencoded; charset=UTF-8";
            }

            @Override
            protected Map<String, String> getParams() throws AuthFailureError {


                Map<String, String> postParam = new HashMap<String, String>();

                postParam.put("email", "asd@asd.com");
                postParam.put("password", "asd");


                return postParam;
            }

        };

        requestQueue.add(jsonObjRequest);
StringRequest jsonObjRequest=新的StringRequest(Request.Method.POST,
网址,
新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
}
},new Response.ErrorListener(){
@凌驾
公共无效onErrorResponse(截击错误){
}
}) {
@凌驾
公共字符串getBodyContentType(){
返回“application/x-www-form-urlencoded;charset=UTF-8”;
}
@凌驾
受保护的映射getParams()引发AuthFailureError{
Map postParam=新的HashMap();
postParam.put(“电子邮件”asd@asd.com");
postParam.put(“密码”、“asd”);
返回后参数;
}
};
add(jsonObjRequest);

您可以尝试使用StringRequest吗?JSONObject请求中有一个错误,您无法发送参数:,您需要尝试使用StringRequest,它肯定会起作用。使用StringRequest可以起作用。如果您将其作为答案发布,我可以接受。为了将来参考,您应该在提问时发布准确的错误消息。您是否回显并查看服务器收到的电子邮件/密码?