Tôi đang gọi một API trong Bộ điều khiển chỉ mục của tôi như thế này và mọi thứ hoạt động tốt, chỉ khi tôi mở Fiddler.Tại sao gọi API trong ASP.NET chỉ hoạt động nếu tôi có Fiddler mở?
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);
}
Nếu tôi đóng Fiddler tôi nhận được lỗi sau:
No connection could be made because the target machine actively refused it 127.0.0.1:8888
Có một số cấu hình tôi phải bao gồm, để gọi một tác phẩm API, ngay cả khi tôi không có Fiddler mở.
127.0.0.1:8888 là địa chỉ proxy không hợp lệ của bạn. Bằng cách nào đó, một nơi nào đó ứng dụng ASP.Net của bạn vẫn đang sử dụng proxy fiddler của bạn làm proxy http của nó. Tìm ra nơi, và tắt nó đi. Nó có thể chỉ yêu cầu bạn khởi động lại IIS. – Aron
Có bạn đã đúng. Tôi đã sử dụng giải pháp được đề xuất bởi RasmusW, và nó đã hoạt động. – mgiota