【发布时间】:2011-08-18 17:33:52
【问题描述】:
我正在尝试向某个 Web 服务器发送一些 HTTP POST 参数,其中一个参数包含西里尔字符。所以问题是,如果我使用这段代码:
wc.getPage(requestSettings);
requestSettings.setHttpMethod(HttpMethod.POST);
requestSettings.setRequestParameters(new ArrayList());
requestSettings.getRequestParameters().add(new NameValuePair("username", "Друже бобер"));
wc.getPage(requestSettings);
服务器将收到下一个 urlencoded 参数: 这是错误的解码字符串“Дружебобер”。 所以我认为 HtmlUnit 使用 ASCII 而不是 Unicode 在核心中编码 url。如何禁用 url 编码或如何修复此错误?如果我将此字符串编码并设置为 NameValuePair,那么所有百分比字符都将由 HtmlUnit 编码为。
【问题讨论】: