C# 在MVC5中使用我的API控制器的主机名
在MVC5项目中 假设我有类似的APIC# 在MVC5中使用我的API控制器的主机名,c#,asp.net-mvc-5,C#,Asp.net Mvc 5,在MVC5项目中 假设我有类似的API abc.com/authonication?userName=asdklfsdf&token=ASDF45FEWF312DFSFWE465SDF465 另外一些web应用程序(example.com)使用此API 在我的控制器中,我想获取使用此API验证的域的主机名(example.com)您可以从HttpContext.Request字段获得一些有用的信息 HttpContext.Request.UserHostAddress HttpCont
abc.com/authonication?userName=asdklfsdf&token=ASDF45FEWF312DFSFWE465SDF465
另外一些web应用程序(example.com)使用此API
在我的控制器中,我想获取使用此API验证的域的主机名(example.com)您可以从HttpContext.Request字段获得一些有用的信息
HttpContext.Request.UserHostAddress
HttpContext.Request.UserHostName
这些信息不一定可用,但在很多情况下,它们都存在。只是不要依赖它。您可以从HttpContext.Request字段获得一些有用的信息
HttpContext.Request.UserHostAddress
HttpContext.Request.UserHostName
这些信息不一定可用,但在很多情况下,它们都存在。不要依赖它。您可以通过API操作方法本身实现这一点
[HttpGet]
public object Add(string data = "")
{
try
{
string result = "0";
if (!string.IsNullOrEmpty(data))
{
var host = System.Web.HttpContext.Current.Request.UserHostName;
var ip = System.Web.HttpContext.Current.Request.UserHostAddress;
}
return new { response = result };
}
catch (Exception ex)
{
throw ex;
}
您可以通过API操作方法本身来实现这一点
[HttpGet]
public object Add(string data = "")
{
try
{
string result = "0";
if (!string.IsNullOrEmpty(data))
{
var host = System.Web.HttpContext.Current.Request.UserHostName;
var ip = System.Web.HttpContext.Current.Request.UserHostAddress;
}
return new { response = result };
}
catch (Exception ex)
{
throw ex;
}
网络不是这样工作的。请求是从IP地址发出的。您可以进行反向查找以查看哪些名称注册到该IP地址,但这并不是万无一失的。另请参见.Is
example.com
从客户端(web浏览器)或服务器(如IIS)调用您的网站?example.com从浏览器调用网络不是这样工作的。请求是从IP地址发出的。您可以进行反向查找以查看哪些名称注册到该IP地址,但这并不是万无一失的。另请参见.Isexample.com
从客户端(web浏览器)或服务器(如IIS)调用您的网站?example.com从浏览器调用HttpContext.Request.UserHostAddress我获取的是“ip地址”和HttpContext.Request.UserHostName我获取的是机器名正如我所说的,这取决于很多因素,包括实际发送该信息的浏览器。有些浏览器不会包含它。对于某些请求,您将获得机器名,尤其是在本地尝试时。从这里,我将获得“ip地址”和HttpContext.Request.UserHostAddress。我将获得机器名正如我所说的,这取决于许多因素,包括浏览器实际发送的信息。有些浏览器不会包含它。对于某些请求,您将获得机器名,尤其是在本地尝试时。