最近在弄框架项目,要通过框架项目去读取和控制子项目。使用httpclient通过uri去访问子项目的业务功能。
废话不多说。
在非中文参数传递的时候都很正常。
但是后来遇到了使用get方式的带中文参数的url。让我纠结了2天多。字符码转来转去,最后还是失败了。
突然我改用post方式,就使用httpclient官方的demo。居然成功了。真是开心啊!
.... DefaultHttpClient httpclient = new DefaultHttpClient(); HttpResponse response; HttpEntity entity; HttpPost httpost = new HttpPost("http://10.1.8.5/loginValidate"); List <NameValuePair> nvps = new ArrayList <NameValuePair>(); nvps.add(new BasicNameValuePair("name", "kaxu中文")); nvps.add(new BasicNameValuePair("password", "kaxu")); httpost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8)); response = httpclient.execute(httpost); .....