我在一个项目中有一个当前工作的控制器方法,如下所示:
[HttpGet]
public async Task<IHttpActionResult> GetReport([FromUri] ReportParamiters ReportRequest, CancellationToken cancellationToken)
{…}
但这可能会从另一个项目中调用,使用以下命令进行传递调用,具体取决于调用者是谁/在哪里:
[HttpGet]
public async Task<HttpResponseMessage> GetReport([FromUri] ReportParameters ReportParameters, CancellationToken cancellationToken)
{
using(HttpClient client = this.MessageTransferHelper.BuildJsonHttpClient(Helper.BearerToken(this.Url.Request.Headers.Authorization.ToString())))
{
HttpResponseMessage response =
await
client.GetAsync(this.ConfigurationService.ReportsUrl() + "report1/?DateFrom=" +
ReportParameters.DateFrom.ToString("MM-dd-yyyy") + "&DateTo=" + ReportParameters.DateTo.ToString("MM-dd-yyyy") +
"&valueList=" + String.Join("&valueList=", ReportParameters.Stores.ToArray()));
return response;
第二个示例简单地创建 url 并将其传递给第一个示例中持有的实际控制器,并返回结果。我在谷歌上搜索了这个问题的答案,但找不到任何匹配的东西。
我可以创建一个传递到第二个示例的 GET 中的取消令牌,如图所示,然后将它(连同相关搜索信息)传递到另一个 GET 中吗?(在另一个远程服务器上运行)