我正在使用内置的SS Razor,Auth和Fluent验证构建一个非常简单的ServiceStack
网站。我已经设置了一个简单的登录页面,但是如果出现任何类型的失败,我会显示SS Snapshot of Authenticate generated by ServiceStack
页面。
login.cshtml
<form action="@(new Authenticate() { provider = "credentials" }.ToPostUrl())" method="post">
<input type="text" name="username" />
<input type="password" name="password" />
<input type="hidden" name="continue" value="@(new Home().ToGetUrl())" />
</form>
AppHost.cs (Configure snippet)
TimeSpan slidingExpiry = TimeSpan.FromMinutes(60);
var authProvider = new CredentialsAuthProvider()
{
SessionExpiry = slidingExpiry
};
AuthFeature authFeature = new AuthFeature(
() => new AuthUserSession(),
new IAuthProvider[] { authProvider },
htmlRedirect: new Login().ToGetUrl()
);
authFeature.IncludeAssignRoleServices = false;
authFeature.IncludeRegistrationService = false;
authFeature.IncludeAuthMetadataProvider = false;
我希望能够捕获这个并显示带有错误的剃刀视图,而不是需要进行AJAX调用来进行身份验证。如何设置我的网站以显示验证失败的剃刀视图?
答案 0 :(得分:2)
关注API First development并使用Ajax绝对是处理Fluent验证错误的首选方法。
此表格发布到Authenticate
服务,该服务需要自己的Razor视图才能显示不同的HTML表示形式。因此,您需要添加Authenticate.cshtml
或AuthenticateResponse.cshtml
查看页面来处理身份验证服务的响应。