我查了一些代码,发现了

  private readonly HttpClient _client;
 _client = new HttpClient(clientHandler);
 _client.DefaultRequestHeaders.ExpectContinue = false;

msdn(https://goo.gl/IoZlB1)不包含关于expectcontinue的太多信息。msdn(https://goo.gl/IoZlB1)上的httprequestheader枚举还将expect描述为
expect头,指定特定的服务器行为
客户要求的。
我希望有人能对ExpectContinue有所启发。它的目的是什么?如果它是真是假会发生什么?

最佳答案

continue状态主要用于首先发送请求头,以查看服务器是否允许(接受)请求。如果服务器说ok,它将发送一个100 continue,客户端继续处理请求体。否则,服务器以417响应(预期失败)。
假设您要将1 GB文件上载到服务器上的特定文件夹。如果您直接启动传输,服务器不接受大于512 MB的文件或文件夹不存在,服务器将不接受该文件,并且传输将为双方浪费资源。
查看w3c文档here
见第8.2.3节100(继续)状态的使用

08-19 02:03