直接从HttpServer返回响应

时间:2019-04-25 14:18:46

标签: c# http system.web

前几天我可以解决这一问题,这让我感到困惑,我希望能弄清楚这个问题的发生原因。

以下是我正在使用的示例:

public class MyHttpServer : HttpServer
{
    protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
    {
        if (someCondition)
        {
            return new Task<HttpResponseMessage>(() => new HttpResponseMessage(HttpStatusCode.BadRequest));
        }

        return base.SendAsync(request, cancellationToken);
    }
}

我希望,如果满足一些前提条件,我会收到错误的响应消息,但是,它会一直旋转,直到我停止服务器,然后客户端才收到一条消息,即“服务器。”是什么原因造成的,并且有可能从服务器的SendAsync方法返回响应消息吗?

1 个答案:

答案 0 :(得分:1)

您要从结果中返回,因为您已经有了响应

return Task.FromResult(new HttpResponseMessage(HttpStatusCode.BadRequest))
相关问题