Android异步Http客户端中带RequestParams的JSON数组
我无法向服务器发送JSON POST请求 我的服务器接受类型为application/json的帖子,示例如下:Android异步Http客户端中带RequestParams的JSON数组,android,json,http-post,Android,Json,Http Post,我无法向服务器发送JSON POST请求 我的服务器接受类型为application/json的帖子,示例如下: { "name": "Group4", "users": [ {"email": "user@example.org"}, {"email": "user2@example.org"}, ] } 如果我通过REST客户端发送此消息,我会得到200 OK作为响应,一切正常 我的Android客户端使用Android异步HTTP库(),这里是Reques
{
"name": "Group4",
"users": [
{"email": "user@example.org"},
{"email": "user2@example.org"},
]
}
如果我通过REST客户端发送此消息,我会得到200 OK作为响应,一切正常
我的Android客户端使用Android异步HTTP库(),这里是RequestParams类的文档
我的服务器甚至不接受请求,直接失败,出现以下错误:
AttributeError: 'unicode' object has no attribute 'iteritems'
问题必须出现在我创建RequestParams的地方。有人能告诉我这有什么问题吗?我想我必须创建一个名为“users”的数组,然后在其中添加带有键值项的对象。建议在Android中使用Volley进行异步调用只需将
列表
放入请求参数中即可。以下是一个例子:
RequestParams params = new RequestParams();
List<String> list = new ArrayList<String>(); // Ordered collection
list.add("Java");
list.add("C");
params.put("languages", list);
//above code will generate url params: "languages[0]=Java&languages[1]=C"
RequestParams params=newrequestparams();
List List=新建ArrayList();//有序收集
添加(“Java”);
列表。添加(“C”);
参数put(“语言”,列表);
//上面的代码将生成url参数:“语言[0]=Java和语言[1]=C”
所以您不需要使用循环序列手动添加它。
见文件
AttributeError: 'unicode' object has no attribute 'iteritems'
RequestParams params = new RequestParams();
List<String> list = new ArrayList<String>(); // Ordered collection
list.add("Java");
list.add("C");
params.put("languages", list);
//above code will generate url params: "languages[0]=Java&languages[1]=C"