0
HttpClient client = new HttpClient(); 
client.BaseAddress = new Uri("http://localhost:60792"); 

而不是 localhost:60792 我如何在启动时动态找到它?将我指向正确的方向就足够了。但是,如果您有答案,请告诉我。

更新感谢您的提示。我的最终答案是

String baseURL = string.Format(
      (
        System.Web.HttpContext.Current.Request.Url.Port != 80) ? "{0}://{1}:{2}" : "{0}://{1}",
        System.Web.HttpContext.Current.Request.Url.Scheme,
        System.Web.HttpContext.Current.Request.Url.Host,
        System.Web.HttpContext.Current.Request.Url.Port
);
4

2 回答 2

4

string url = HttpContext.Current.Request.Url.AbsoluteUri;

于 2012-11-26T21:24:08.967 回答
0

在 Visual Studio 2019 的新更新之后,@webNoob 的答案将给出一个错误

'HttpContext' does not contain a definition for 'Current' and no accessible extension method 'Current' accepting a first argument of type 'HttpContext' could be found (are you missing a using directive or an assembly reference?)

所以即使你使用System.webSystem.Net.Http你也会得到同样的错误。

您仍然可以使用以下内容作为修复:

用于获取字符串的查询

  1. 用于获取查询 var url1 = HttpContext.Request.Query.Keys;

  2. 获取路径 var url2 = HttpContext.Request.Path.Value;

于 2019-06-04T05:50:48.023 回答