アンダースコア(_)を含むパラメータを含むURLを投稿しています。
サンプル:http://sdsdsds_asasasahjhd.com/dsdsdsd/login.json?
私はそれをこのように投稿しています:
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://sdsdsds_asasasahjhd.com/dsdsdsd/login.json?");
try {
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("key1", "value1"));
nameValuePairs.add(new BasicNameValuePair("key2", "value2"));
nameValuePairs
.add(new BasicNameValuePair("key3", "value3"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (Exception e) {
e.printStackTrace();
}
私が検査しているとき、私は例外の詳細httpclient.execute(httppost)
を取得IllegalArgumentException
してキャッチしていると言っていHost name cannot be null
ます。解決策を指定してください。
私はここで他のいくつかの質問を経験しました:
- java.lang.IllegalStateException:ターゲットホストがnullであってはならず、パラメータで設定されていてはなりません
- HttpResponse executeforandroidではホスト名がnullにならない場合があります
しかし、私はURL全体をエンコードしていないので、役に立ちません。