【问题标题】:How to get request url who used my webapi in asp.net?如何获取在 asp.net 中使用我的 web api 的请求 url?
【发布时间】:2019-10-14 16:52:20
【问题描述】:

我已经编写了一个 Web API 方法,现在我想获取一个使用我的 API 方法的客户端网站 URL。

我尝试了这行代码,但我得到了我的 API URL。但我想要一个客户端 URL。

var requestUrl = Request.Url;

【问题讨论】:

  • 您在“客户网址”下是什么意思?
  • 可以获取客户端的IP和主机名,但不能获取“客户端URL”。看看:triconsole.com/dotnet/httprequest_class.php#urlreferrer
  • 调用 API 时,通常不会像浏览器那样发送 Refererheader。因此,据我所知,您无法获取 URL。您可以获取 IP 地址并进行反向 DNS 查找,但这会给您用户地址 - 而不是他们正在使用的网站的地址。
  • 如果 CORS 工作正常:Request.Headers.GetValues("Origin");

标签: c# asp.net-mvc asp.net-web-api asp.net-core web-applications


【解决方案1】:
var clientRequest = HttpContext.Request.Headers["Referer"];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-03-12
    • 1970-01-01
    • 2014-10-26
    • 1970-01-01
    • 2016-11-09
    • 2012-09-02
    • 2013-05-05
    相关资源
    最近更新 更多