我的服务器以JSON格式接收Post请求,所以我创建了POJO类,我在其中设置数据并使用GSON转换为JSON字符串(toJson()方法)
我在我的应用程序中使用Volley库。如何使用截击发送帖子请求? 我尝试了以下代码:
Entity object = new Entity();
LinkedHashMap<String, Object> properties = new LinkedHashMap<String, Object>(7);
properties.put("email",email);
properties.put("phone",phone);
properties.put("passwd",password);
properties.put("name",username);
properties.put("crycode","IN");
object.setType(EntityType.USER);
object.setProperties(properties);
Gson gson = new Gson();
Map<String,String> headers = new HashMap<String, String>(1);
headers.put("Content-Type", "application/json");
String url = "my server URL";
GsonRequest<RegisterResponse> myReq = new GsonRequest<RegisterResponse>(
com.android.volley.Request.Method.POST,
url,
RegisterResponse.class,
gson.toJson(object),headers,
createMyReqSuccessListener(),
createMyReqErrorListener());
AppController.getInstance().addToRequestQueue(myReq);
当我的服务器以JSON格式接收请求时,我是否需要将JSON字符串再次转换为JSON对象或者我转换的字符串是否足够?以及如何发送请求?
请帮我解决这个问题。
答案 0 :(得分:0)
您的POJO课程应该如下所示:
public class Entity {
private String email;
private String phone;
private String passwd;
private String name;
private String crycode;
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCrycode() {
return crycode;
}
public void setCrycode(String crycode) {
this.crycode = crycode;
}
}
请参阅我忽略了userType,您也可以添加它。然后最后将它交给Gson,它会将此类转换为JSON String。