为什么只有在我打开Fiddler时才能在ASP.NET中调用API?

mgi*_*ota 9 c# asp.net fiddler asp.net-web-api

我在我的索引控制器中调用这样的API,一切正常,只有我打开Fiddler.

public ActionResult Index()
{
    Base model = null;
    var client = new HttpClient();
    var task =
        client.GetAsync(
        "http://example.api.com/users/john/profile")
        .ContinueWith((taskwithresponse) =>
        {
            var response = taskwithresponse.Result;
            var readtask = response.Content.ReadAsAsync<Base>();
            readtask.Wait();
            model = readtask.Result;
        });
    task.Wait();

    return View(model);
}
Run Code Online (Sandbox Code Playgroud)

如果我关闭Fiddler我会收到以下错误:

无法建立连接,因为目标计算机主动拒绝它127.0.0.1:8888

是否有一些配置,我必须包括,以便调用API工作,即使我没有Fiddler打开.

Ras*_*usW 12

检查web.config是否有任何代理配置,还要检查是否配置了.net可能使用的系统默认代理.您可以将其添加到web.config以禁用代理配置:

    <system.net>
      <!-- set enabled to true to use the system default proxy -->
      <defaultProxy enabled="false" />
    </system.net>
Run Code Online (Sandbox Code Playgroud)

  • 谢谢.这解决了我的问题:-) (2认同)