HOWTO:检查传入的请求是否来自ASP.NET MVC不是.Net Core中的本地请求?

问题描述

我有一个使用.NET 4.5的ASP.NET MVC应用程序,我需要检查传入的请求是来自本地主机(部署我的应用程序的Web服务器本身)还是来自外部客户端。

我知道我可以在控制器中使用以下属性:

System.Web.HttpContext.Current.Request.IsLocal

但是有些人说它在.Net Core版本中不起作用。请参阅Oleg发表的评论中的here

请谨慎使用HttpContext.Connection.IsLocal。它似乎 对我来说,HttpContext.Connection.RemoteIpAddress的用法更多 安全的方法。如果我在本地连接到测试ASP.NET 5 RC1项目,我会看到:: 1 在RemoteIpAddress中,但是HttpContext.Connection.IsLocal为false。它的 错误。 –奥列格'16 Feb 6'在12:10

所以我想知道它是否在ASP.NET MVC中也不起作用。有人可以确认吗?

检查传入请求是否是本地(IPv6中的localhost,127.0.0.1,:: 1)或在ASP.NET MVC(非.Net Core)中不是的最佳方法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...