这是我创建的 API 控制器的简化版本。
public class SampleController : ApiController
{
[System.Web.Http.HttpGet]
public string Test(string url)
{
try
{
using (WebClient webClient = new WebClientEx())
{
return webClient.DownloadString(url);
}
}
catch (Exception ex)
{
return string.Empty;
}
}
给定一个完全有效的 url,这将抛出一个 WebException,上面写着“无法解析远程名称”。
如果我在 LinqPad 中使用相同的 url 执行相同的方法,它就可以工作。我已经尝试过 WebClient 和 WebRequest 的结果相同。
需要明确的是,这不是路由问题,因为我可以通过任何一种方式点击并单步执行代码,并且所涉及的 url 不是此应用程序的一部分。