Отправка двоичных данных с помощью клиента Restlet - PullRequest
7 голосов
/ 24 мая 2009

Я пытаюсь отправить байт [] (используя PUT) с помощью Restlet, но не могу найти информацию о том, как это сделать. Мой код выглядит так:

Request request = new Request(Method.PUT, url);
request.setEntity( WHAT DO I PUT HERE?, MediaType.APPLICATION_OCTET_STREAM);

Я ожидал найти что-то похожее на ByteArrayRepresentation, точно так же, как есть JsonRepresentation и StringRepresentation, но я ничего не смог найти.

Ответы [ 3 ]

7 голосов
/ 24 мая 2009

Полагаю, вы хотите использовать InputRepresentation , вот так:

Representation representation = new InputRepresentation(new ByteArrayInputStream(bytes), MediaType.APPLICATION_OCTET_STREAM);
request.setEntity(representation);
1 голос
/ 24 мая 2009

вы можете попробовать создать подкласс WritableRepresentation, который специально разработан для больших представлений

1 голос
/ 24 мая 2009

Я не знаком с рестлетом, но один из способов сделать это - закодировать в base64 данные. Тогда вы можете обработать это как обычную строку.

...