Определите тело файла, когда ему предоставлен байтовый поток содержимого файла - PullRequest
2 голосов
/ 28 января 2012

Я пытаюсь использовать apache http client v4.x.

В конкретном случае я должен сделать запрос из нескольких частей ...

Сделан запрос из нескольких частейв Java, используя следующий код -

HttpPost httppost = new HttpPost("http://localhost:8080" + "/servlets-examples/servlet/RequestInfoExample");

FileBody bin = new FileBody(new File(args[0]));
MultipartEntity reqEntity = new MultipartEntity();
reqEntity.addPart("bin", bin);
httppost.setEntity(reqEntity);
HttpResponse response = httpclient.execute(httppost);

В моем случае, у меня есть поток байтов тела файла, доступных со мной,

byte[] bytes = value.toBinary(charset);

Теперь я хочу добавить этот файл (поток байтов) в составную сущность, чтобы я мог сделать многочастный почтовый запрос ... как мне это сделать?

1 Ответ

4 голосов
/ 28 января 2012

Использование ByteArrayBody?

byte[] bytes = value.toBinary(charset);
ContentBody bin = new ByteArrayBody(bytes, "myfile.dat");
MultipartEntity reqEntity = new MultipartEntity();
reqEntity.addPart("bin", bin);
...