做项目的时候遇见一个问题 从手机端向服务器断发送数据提交评论 服务器返回值 true or false 手机端验证是否成功, 手机端判断如下
public static boolean addCommnet(){
String json=Unet.doHttp(url);
if(json.equls(true)){
return true;
}
return false;
}
结果服务器返回值为true
但是这个添加评论的方法就是一直返回为false 又是改编码又是看数据库的 折腾一上午才发现原来是逻辑错误,if判断的方法体中的return 并不是添加评论方法的返回值,if里的return 的作用是跳出if循环 然后继续执行,接下来的return false 所以一直return的是false ,改为如下代码
public static boolean addComment(AppContext appContext, String text,
int msgid) {
boolean request = false;
try {
HashMap<String, Object> params = new HashMap<String, Object>();
params.put("text", text);
params.put("msgid", msgid);
String json = UNet.httpPost(appContext, Urls.ADD_COMMENT, params);
JSONObject js = new JSONObject(json);
int code = js.getInt("code");
if (code == 1) {
request = true;
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return request;
}