loot.tools
417

Expectation Failed

4xx Client Error

The expectation in the Expect header couldn't be met.

417 Expectation Failed means the server (or a proxy in front of it) can't satisfy the Expect header, which in practice always means Expect: 100-continue. Older proxies and some servers never implemented the 100-continue handshake and reject the whole request instead of just ignoring the header.

What 417 looks like on the wire

POST /upload HTTP/1.1
Host: legacy.example.com
Expect: 100-continue

HTTP/1.1 417 Expectation Failed

About 4xx Client Error

The request has a problem the client needs to fix, like a bad URL, missing auth, or invalid input.

How to fix 417 Expectation Failed

  • Send an empty Expect header to disable the 100-continue handshake (curl does this with an explicit blank header).
  • Upgrade or reconfigure the proxy that rejects 100-continue.
  • If you can't change the server, send the body without the handshake.

Where it's defined

417 Expectation Failed is defined in RFC 9110 §15.5.18. MDN's 417 reference covers browser behavior and examples.

Looking for a different one? See the full HTTP status code reference.