我有一些 ASP .NET MVC4 网站,我必须首先将其放到开发场所进行测试。开发网站没有 SSL,但 LIVE 有。
好。我必须[Requirehttps]
在 20 个控制器中使用,每次在 DEV 网站下测试时我都无法评论它。
是否有任何方法可以配置 [Requirehttps] 至少基于一些 web.config 设置,或者可能有另一种方法?我的意思是,当我在 LIVE 下发布网站时,我不喜欢[Requirehttps]
每次评论大约 20 条。
有什么线索吗?
我有一些 ASP .NET MVC4 网站,我必须首先将其放到开发场所进行测试。开发网站没有 SSL,但 LIVE 有。
好。我必须[Requirehttps]
在 20 个控制器中使用,每次在 DEV 网站下测试时我都无法评论它。
是否有任何方法可以配置 [Requirehttps] 至少基于一些 web.config 设置,或者可能有另一种方法?我的意思是,当我在 LIVE 下发布网站时,我不喜欢[Requirehttps]
每次评论大约 20 条。
有什么线索吗?
覆盖 RequireHttpsAttribute
网络配置
<appSettings>
<add key="SSL" value="false" />
</appSettings>
MyHttpsAttribute.cs
public class MyHttpsAttribute : RequireHttpsAttribute, IAuthorizationFilter
{
public override void OnAuthorization(AuthorizationContext filterContext)
{
if (bool.Parse(AppSettings["SSL"]) != true) {
return;
}
base.OnAuthorization(filterContext);
}
}
基本控制器
[MyHttps]
public abstract class BaseController : Controller
{
...
}
如果您在调试/发布版本之间切换,您可以在代码中执行此操作:
#if !DEBUG
[RequireHttps]
#endif