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可以起作用。如果您将其作为答案发布,我可以接受。为了将来参考,您应该在提问时发布准确的错误消息。您是否回显并查看服务器收到的电子邮件/密码?