X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=Rakka%2FResource%2FObject.hs;h=b029e5422900b69e1b41d4459016f680a6b0dda2;hb=ddf0b4d7ab2f1e141edbc7ef75d39853c0846f8c;hp=1a81e6719dc7d61f7d8e20723b969a3e7ee7b667;hpb=689969647cf459907a66f8cd9cbd32a27b7e03fc;p=Rakka.git diff --git a/Rakka/Resource/Object.hs b/Rakka/Resource/Object.hs index 1a81e67..b029e54 100644 --- a/Rakka/Resource/Object.hs +++ b/Rakka/Resource/Object.hs @@ -3,6 +3,8 @@ module Rakka.Resource.Object ) where +import Data.ByteString.Char8 as C8 +import Data.Maybe import Network.HTTP.Lucu import Network.HTTP.Lucu.Utils import Rakka.Environment @@ -38,7 +40,7 @@ handleGet env name Just redir@(Redirection _ _ _ _) -> handleRedirect env redir - Just entity@(Entity _ _ _ _ _ _ _ _ _ _ _ _ _) + Just entity@(Entity _ _ _ _ _ _ _ _ _ _ _ _ _ _) -> handleGetEntity env entity @@ -66,5 +68,7 @@ handleGetEntity env page 0 -> foundTimeStamp lastMod -- 0 はデフォルトページ rev -> foundEntity (strongETag $ show rev) lastMod - setContentType (pageType page) - outputLBS (pageContent page) + setContentType (pageType page) + setHeader (C8.pack "Content-Disposition") + (C8.pack $ "attachment; filename=" ++ quoteStr (pageFileName' page)) + outputLBS (pageContent page)