Domanda

Sto cercando di inviare un byte [] (usando PUT) con Restlet ma non riesco a trovare alcuna info su come farlo. Il mio codice è simile al seguente:

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

Mi aspettavo di trovare qualcosa lungo le linee di ByteArrayRepresentation, proprio come se ci fosse un JsonRepresentation e uno StringRepresentation ma non ho trovato nulla.

È stato utile?

Soluzione

Io credo che si desidera utilizzare un InputRepresentation , in questo modo:

Representation representation = new InputRepresentation(new ByteArrayInputStream(bytes), MediaType.APPLICATION_OCTET_STREAM);
request.setEntity(representation);

Altri suggerimenti

Non ho familiarità con Restlet, ma un modo per farlo sarebbe quello di base64 codificare i dati. Poi si potrebbe gestire la cosa come una stringa regolare.

si può provare WritableRepresentation sottoclassi che è stato appositamente progettato per le grandi rappresentazioni

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top