httpmime パッケージをアップグレードしたら、文字列が UTF-8 として送受信されなくなりました
MultipartEntityBuilder entity = MultipartEntityBuilder.create();
Charset chars = Charset.forName("UTF-8");
entity.setCharset(chars);
entity.addTextBody("some_text", some_text);
HttpPost httppost = new HttpPost(url);
httppost.setEntity(entity.build());
...and so on..
何が足りないのでしょうか? 以前はStringBodyを構築して、そのStringBodyに文字セットを設定していましたが、現在は廃止されており、機能していないようです。
ベストアンサー1
解決しました:) ContentTypeが重要になっていて、プレーンテキストとJSONテキストの両方を送信していたことが判明しました。
プレーンテキストの場合は以下を使用できます:
entity.addTextBody("plain_text",plain_text,ContentType.TEXT_PLAIN);
JSONの場合:
entity.addTextBody("json_text",json_text,ContentType.APPLICATION_JSON);
そうすれば、文字セットは JSON 文字列でも機能します (奇妙ですが、今は問題ありません)