【发布时间】:2016-11-08 00:58:17
【问题描述】:
我有一个 WebAPI 服务,我希望它向自己发送一个 http 请求。我想确认最合适的方法是什么。 (通常情况下,我只会实例化目标控制器的另一个实例或重构接口后面的代码,然后以这种方式发出请求,但由于各种原因,我不想使用该方法。)
下面的代码是向同一服务中的不同控制器发出 http 请求的最合适方式吗?
using (HttpClient client = new HttpClient())
{
var httpRequest = new HttpRequestMessage("GET", "https://localhost/SomeOtherController");
return await client.SendAsync(httpRequest);
}
【问题讨论】:
-
这似乎相当有效,因为它是一个普通的 HTTP,它是否是 localhost 并不重要。但我真的建议您不要这样做,而是重用共享服务中的通用逻辑,如下所述。
标签: c# .net asp.net-web-api asp.net-web-api2