我正在尝试使用以下代码通过本地网络中的计算机上的 android ion 库发布 json 对象:
String url = "http://192.168.1.23/ws/svn/branches/application/public/connectMobile";
try {
JsonObject json = new JsonObject();
json.addProperty("email", email.getText().toString());
json.addProperty("psw", password.getText().toString());
Log.i("json envoyé",json.toString());
Ion.with(context)
.load("POST",url)
.addHeader("Content-Type", "application/json")
.setLogging("ion-geny", Log.DEBUG)
.setJsonObjectBody(json)
.asJsonObject()
.setCallback(new FutureCallback<JsonObject>() {
@Override
public void onCompleted(Exception e, JsonObject result) {
if (result != null)
{
Log.i("result",result.toString());
}
else
{
Log.i("result","null");
}
if (e != null)
{
Log.i("error",e.toString());
}
else
{
Log.i("error","null");
}
}
});
} catch (Exception ex) {
ex.printStackTrace();
Log.i("except", ex.toString());
}
调试给出了这个:
09-27 12:19:43.302 3309-3309/com.bewizme.bewizmeloginsample I/email: f@f.com 09-27 12:19:43.302 3309-3309/com.bewizme.bewizmeloginsample I/Password: f 09- 27 12:19:43.362 3309-3309/com.bewizme.bewizmeloginsample I/connected﹕已连接真实 09-27 12:19:43.402 3309-3309/com.bewizme.bewizmeloginsample D/dalvikvm﹕GC_FOR_ALLOC 释放 142K,7% 释放 2917K /3116K, 暂停 15ms, 共 18ms 09-27 12:19:43.482 3309-3309/com.bewizme.bewizmeloginsample I/json envoyé: {"email":"f@f.com","psw":"f" } 09-27 12:19:43.602 3309-3309/com.bewizme.bewizmeloginsample D/dalvikvm: GC_FOR_ALLOC 释放 154K,6% 释放 3275K/3480K,暂停 14ms,总计 15ms 09-27 12:19:43.622/3309-339 com.bewizme.bewizmeloginsample D/ion-geny﹕ (0 ms) http://192.168.1.23/ws/svn/branches/application/public/connectMobile:准备请求 09-27 12:19:43.632 3309-3309/com.bewizme.bewizmeloginsample I/ion-geny:(0 ms) http ://192.168.1.23/ws/svn/branches/application/public/connectMobile:使用加载器:com.koushikdutta.ion.loader.HttpLoader@b20a3808 09-27 12:19:43.652 3309-3331/com.bewizme.bewizmeloginsample D/ion-geny:(0毫秒) http://192.168.1.23/ws/svn/branches/application/public/connectMobile:执行请求。09-27 12:19:44.862 3309-3331/com.bewizme.bewizmeloginsample D/ion-geny: (1212 ms) http://192.168.1.23/ws/svn/branches/application/public/connectMobile: 响应不可缓存 09-27 12:19:44.902 3309-3331/com.bewizme.bewizmeloginsample D/ion-geny: (1249 ms) http://192.168.1.23/ws/svn/branches/application/public/ connectMobile:连接成功 09-27 12:19:45.002 3309-3331/com.bewizme.bewizmeloginsample D/dalvikvm:GC_FOR_ALLOC 释放 263K,9% 释放 3462K/3788K,暂停 61ms,总计 61ms 09-27 12:19:45.052 3309 -3309/com.bewizme.bewizmeloginsample I/result: null 09-27 12:19:45.052 3309-3309/com.bewizme.bewizmeloginsample I/error: com.google.gson.JsonParseException: 无法解析 json
我怀疑解析错误是由于没有返回任何内容。
此外,在我的服务器上,我编写了一段代码来检查传入的内容,并且我在服务器上没有从我的示例中收到任何内容,但是当尝试使用 RESTEASY 和 firefox 发送相同内容时,帖子正确发送,我的服务器收到了帖子并且一个响应被发回。
任何想法 ?我不知道出了什么问题...