0
我試圖讓Scala中使用netty.IO一個HTTP響應(JSON)的物體阻擋網狀IO(阻塞,不異步)使用Scala的
大多數示例之類的東西,我覺得是Java和我似乎無法找到一種方法來「迴應http身體」的迴應。我總是以響應代碼或不是身體的對象的.toString結尾。
下面是我到目前爲止
def getRestContentFromNetty(url:String) : String ={
// IO.netty!
val response = new DefaultFullHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.OK);
response.headers().set(Names.CONTENT_TYPE, accept_val).set(Names.AUTHORIZATION, basic_auth)
val bbuf = Unpooled.copiedBuffer("{\"jsonrpc\":\"2.0\",\"method\":\"calc.add\",\"params\":[1,2],\"id\":1}", StandardCharsets.UTF_8);
response.headers().set(HttpHeaders.Names.CONTENT_LENGTH, bbuf.readableBytes());
val q = response.content().clear().writeBytes(bbuf);
logInfo(response.getStatus.toString)// -> this logs "200 OK", so the response seems good.
q.toString
}
這將返回 「UnpooledHeapByteBuf(ridx:0,widx:59,上限:64)」,而不是身體
什麼是非常重要的概念,我在這裏失蹤?