gpt4 book ai didi

ssl - 在 ASP.NET Web API ActionFilterAttribute 上测试本地主机

转载 作者:太空宇宙 更新时间:2023-11-03 13:10:35 25 4
gpt4 key购买 nike

如何使用 ASP.NET Web API 在 ActionFilterAttribute 上测试本地主机?我想跳过 SSL 检查。

public class RequireHttpsAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(HttpActionContext actionContext)
{
var request = actionContext.Request;
if (request.RequestUri.Scheme != Uri.UriSchemeHttps)
{
throw new ValidationException(new SecureConnection());
}

base.OnActionExecuting(actionContext);
}
}

最佳答案

如果您只想测试请求 URI 是否为本地主机,那么 URI 上的 IsLoopback 应该可以正常工作。

但问题是……请求 URI 很容易被不是本地计算机的计算机欺骗。因此,任何远程计算机实际上都可以向您发送带有 localhost 主机 header 的请求。

更好的方法是使用 Filip 在其博客文章中的建议:

http://www.strathweb.com/2013/01/adding-request-islocal-to-asp-net-web-api/

这应该适用于 selfhost 和 webhost 以及客户端的 IP 地址是否是环回。

关于ssl - 在 ASP.NET Web API ActionFilterAttribute 上测试本地主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15030822/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com