2011-02-05 83 views
3

我有從播放框架返回二進制流的問題。根據文檔,如果框架發現控制器方法返回Stream或File,框架應自動返回二進制輸出。那麼我的方法返回一個Stream [Byte],但是框架返回「Stream(100,?)」而不是二進制流。返回二進制流作爲響應請求playframework

我做錯了什麼? 感謝您的答案, 托馬斯·赫爾曼


編輯

確定的情況下,任何人都需要這在將來,它看起來像我莫名其妙地砍死一起。我只是從Stream中創建一個字符串並返回它。它似乎工作正常,但我相信有一些更好的解決方案。

例如:

val builder = new StringBuilder() 
builder.clear 
stream foreach { x=> builder.append(x.toChar)} 
val res = builder.toString 

其中RES是你的控制器方法應該返回

回答

0

你可能已經得到了你所需要的。 Stream(100, ?)Stream,其第一個值是100,其餘值尚未評估。要充分了解它,請嘗試打印stream mkString ("Stream(", ", ", ")")

+0

是的,但我實際上需要Play框架將流的內容發送到Web瀏覽器(或在我的情況下是一個BitTorrent客戶端)。目前,我認爲,它只發送對象的toString值 – Arg 2011-02-05 23:38:42