Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
mohamedkhallouq
GitHub Repository: mohamedkhallouq/content
Path: blob/main/files/en-us/web/http/headers/expect/index.md
6532 views
---
title: Expect slug: Web/HTTP/Headers/Expect browser-compat: http.headers.Expect
---

{{HTTPSidebar}}

The Expect HTTP request header indicates expectations that need to be met by the server to handle the request successfully.

Upon Expect: 100-continue, the server responds with:

  • {{HTTPStatus("100")}} (Continue) if the information from the request header is insufficient to resolve the response and the client should proceed with sending the body.

  • {{HTTPStatus("417")}} (Expectation Failed) if the server cannot meet the expectation

or any other status otherwise (e.g. a 4xx status for a client error, or a 2xx status if the request can be resolved successfully without further processing).

For example, the server may reject a request if its {{HTTPHeader("Content-Length")}} is too large.

No common browsers send the Expect header, but some other clients such as cURL do so by default.

Header type {{Glossary("Request header")}}
{{Glossary("Forbidden header name")}} yes

Syntax

Expect: 100-continue

Directives

There is only one defined expectation:

  • 100-continue

    • : Informs recipients that the client is about to send a (presumably large) message body in this request and wishes to receive a {{HTTPStatus("100")}} (Continue) interim response.

Examples

Large message body

A client sends a request with Expect header and waits for the server to respond before sending the message body.

PUT /somewhere/fun HTTP/1.1 Host: origin.example.com Content-Type: video/h264 Content-Length: 1234567890987 Expect: 100-continue

The server checks the headers and generates the response. The server sends {{HTTPStatus("100")}} (Continue), which instructs the client to send the message body.

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

  • {{HTTPStatus("417", "417 Expectation Failed")}}

  • {{HTTPStatus("100", "100 Continue")}}