ServiceStack をバイパスして独自の HTTP ハンドラーを実装し、ファイルをダウンロードとして提供する方法を見つけましたが、うまく機能しています。しかし、サービススタックの外にいるので、どうにかしてキャッシュにアクセスできるかどうか疑問に思っています。
以下は、カスタム IHTTPHandler を登録する方法です。
SetConfig(new EndpointHostConfig
{
RawHttpHandlers = new List<Func<IHttpRequest, IHttpHandler>>()
{
req => {
if (req.PathInfo.Contains("filetest"))
return new MP4DownloadHandler();
return null;
}
}
});
MP4DownloadHandler クラスの ProcessRequest メンバーから ServiceStack のキャッシュ (ICacheClient) にアクセスできますか?