Jersey 2.0 で Dropbox 用の REST クライアントを実装しようとしています。
次のコードは正常に動作し、私のファイルは Dropbox に正常にアップロードされます。
String targetUrl = "https://api-content.dropbox.com/1/files_put?access_token=" + token.access_token + "&root=dropbox&path=Public/" + file.getName();
WebTarget target = client.target(targetUrl);
final FileDataBodyPart filePart = new FileDataBodyPart("file", file);
final MultiPart multipart = new FormDataMultiPart().bodyPart(filePart);
Response response = target.request()
.put(Entity.entity(multipart, multipart.getMediaType()));
ただし、アップロードされたファイルには不要な MIME 境界が含まれています。
元のファイル:
response : {
"hash": "3ebf46d672258e1e190b70cc1f0dd5ce",
"revision": 87707813,
…
"size": "0 bytes"}
アップロードされたファイル:
--Boundary_1_393888375_1373874680685
Content-Type: text/plain
Content-Disposition: form-data; filename="Dropbox.txt"; modification-date="Fri, 12 Jul 2013 04:23:29 GMT"; size=1328; name="file"
response : {
"hash": "3ebf46d672258e1e190b70cc1f0dd5ce",
"revision": 87707813,
…
"size": "0 bytes"}
--Boundary_1_393888375_1373874680685--
アップロードされたファイルから MIME 境界を取り除くことはできますか?