HTTPHandler
ASP.NET MVC を使用している場合に必要な理由は、Action
メソッドを使用してファイル コンテンツをサーバー化することです。HttpHandler
Action メソッドで行うほとんどのことを行うことができます。http://domainname.com/content/abc
abc.pdfファイルを返すことができるように、アクションのルーティングを行うことができ ます
ブラウザからリソース (PDF) に直接アクセスさせないでください。代わりに、メソッドを介してアクセスを許可しますaction
。アクションメソッドでファイルID/nameをリクエストから読み込み、ファイルを読み込んで出力します。以下のようなアクションメソッドがあると仮定しますResourceController
public ActionResult GetFile(string id)
{
string fullFilePath=somefullpathvariable+"//"+id+".pdf";
return File(fullFilePath, "application/pdf", Server.UrlEncode(id+".pdf"));
}
これで、ユーザーは次のようにアクセスできます
http://www.yourdomain.com/Resource/awesomemvc
awesomemvc.pdf
これで、サーバーに保存されている場所から呼び出されたファイルを返すことができ、someFullPathVariable
その場所へのパスを保持します