반환되는 오류 유형에 따라 특정 오류 페이지 (404, 500 등)를 제공하도록 ServiceStack을 구성하는 방법은 무엇입니까?servicestack의 사용자 정의 오류 페이지
현재 HTML 파일 요청이 인증되었는지 확인하기 위해 아래의 RawHttpHandler 코드를 사용하고 있습니다. 그러나 사용자가 존재하지 않는 파일이나 엔드 포인트를 지정하면 어떻게하면 404.html 페이지를 반환 할 수 있습니까?
public override void Configure(Container container)
{
this.CustomHttpHandlers[HttpStatusCode.NotFound] =
new RazorHandler("/404");
}
CustomHttpHandlers 모두 ASP.NET을 지원 단지 HttpHandler를 어떤 IServiceStackHandler
될 수 있습니다
this.RawHttpHandlers.Add(httpReq =>
{
var session = httpReq.GetSession();
if(!session.IsAuthenticated) {
var isHtmlFileRequest = httpReq.PathInfo.EndsWith(".html");
if(isHtmlFileRequest && !files.Any(s => httpReq.PathInfo.ToLower().Contains(s))) {
return new RedirectHttpHandler {
AbsoluteUrl = "/Login.html"
};
}
}
return null;
});
감사. 나는 전에 그것을 보았지만, 면도기없이 어떻게 작동시키는지를 확신하지 못했습니다. Razor 패키지를 설치해야합니까? 나는 그것을 지금 사용하지 않고있다. – theoutlander
즉, 파일 핸들러 또는 html 파일을 제공하는 데 사용할 수있는 것이 있습니까? – theoutlander
@theoutlander 예 RazorHandler는'ServiceStack.Razor' NuGet 패키지가 필요했습니다. 정적 파일을 제공하는 방법을 보여주는 예제를 사용하여 답변을 업데이트했습니다. – mythz