2012-03-31 79 views
2

以下代碼的工作原理除了內容處置標題從未設置且文件下載時使用的名稱不正確。內容處置標題未在文件下載中設置

我已經搜遍了Java API,但看不到設置標頭的方法。我試圖在apply函數中設置它,但響應對象在那一點是空的。我曾嘗試在索引函數中設置標題,但它被忽略。有人可以解釋我哪裏錯了嗎?非常感謝。

package controllers; 

import java.io.File; 
import java.util.concurrent.Callable; 

import play.libs.Akka; 
import play.libs.F; 
import play.libs.F.Function; 
import play.mvc.Controller; 
import play.mvc.Result; 

public class Application extends Controller 
{ 
    public static Result index() 
    { 
     F.Promise<File> promiseOfFile = Akka.future(new Callable<File>() 
     { 
      public File call() 
      { 
       return new File("temporaryfilename.txt"); 
      } 
     }); 

     response().setHeader("Content-Disposition", "attachment; filename=\"actualfilename.txt\""); 

     return async(promiseOfFile.map(new Function<File, Result>() 
     { 
      @Override 
      public Result apply(File file) 
      { 
       return ok(file); 
      } 
     })); 
    } 
} 

回答

相關問題