我想使用application / x-www-form-urlencoded编码来模拟HTTP POST 发送允许多项选择的选项组。
<select name="groups" multiple="multiple" size="4">
<option value="2">Administration</option>
<option value="1">General</option>
</select>
添加2个名称相同的NameValuePairs(NVP)是否有效?我的服务器端日志显示只收到第一个NVP。
e.g
PostMethod method = ...;
NameValuePair[] nvpairs = {
new NameValuePair( "groups", "2" );
new NameValuePair( "groups", "1" );
};
method.addParameter( nvpairs );
仅收到groups = 1参数。感谢
答案 0 :(得分:0)
更有可能的是,您的服务器代码正在调用ServletRequest.getParameter()
而不是getParameterValues()
。
但验证的最佳方法是使用HTTP代理(例如Fiddler)来查看实际请求。
修改:正确的HttpClient
方法是addParameters()
,而不是addParameter()
- 您的代码显示后者,但我不相信它会编译,所以我假设您复制错误。