在使用android-async-http图书馆时我偶然发现了params.add().
我已经使用params.put()了一段时间,它似乎比add()它允许除String之外的数据类型(如int,long,object,file)更好,而add()不是.
RequestParams params = new RequestParams();
// So how is this
params.add("param_a", "abc");
// different from this
params.put("param_a", "abc");
// and which one should I use?
Run Code Online (Sandbox Code Playgroud)
She*_*yar 16
两者之间的主要区别(除了add()仅限字符串的支持)是用现有密钥put()覆盖先前的存在param而add()不是.
例如:
params.put("etc", "etc");
params.put("key", "abc");
params.put("key", "xyz");
// Params: etc=etc&key=xyz
Run Code Online (Sandbox Code Playgroud)
add params使用相同的键创建两个:
params.add("etc", "etc");
params.add("key", "abc");
params.add("key", "xyz");
// Params: etc=etc&key=abc&key=xyz
Run Code Online (Sandbox Code Playgroud)
但这样做的重要性是什么?
在上面的例子中,Web服务器将只读的最后一个值key,即xyz不abc但这是有用的,当POST荷兰国际集团数组:
params.add("key[]", "a");
params.add("key[]", "b");
params.add("key[]", "c");
// Params: key[]=a&key[]=b&key[]=c
// The server will read it as: "key" => ["a", "b", "c"]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4611 次 |
| 最近记录: |