2016-11-03 8 views
0

Я использую WS для вызова удаленного api. Ответ отформатирован как массив байтов. Как разобрать тело WSResponse в виде массива байтов? Я не хочу использовать шаблон getStream.Тело реакции WS как байты

val holder: WSRequestHolder = WS.url(url) 
    .withRequestTimeout(requestTimeout) 
    .withHeaders(HeaderNames.ACCEPT -> ContentTypes.BINARY) 
holder.get() map { response => response.status match { 
    case 200 => response.bodyAsBytes // I am looking for the bodyAsBytes function 
}} 
+1

'bodyAsBytes' существует как в Play 2.4.x –

+0

@MichaelZajac Я использую игру '2.3.9' :( – Moebius

ответ

0

Получить тело ответа в виде строки, а затем преобразовать его в байты с соответствующим форматом

response.body.toString.getBytes(Charset.forName("UTF-8")) 

Также обратите внимание на Convert string to bytes