100 Continue

HTTP Status CodesInformational (1xx)rarerStatus Code: 100Last updated: todayTested on:Google ChromeNode.js v20 LTSJune 2026

The server has received the request headers, and the client should proceed to send the request body.

100 Continue Quick Fix⏱️ Est. Fix Time: 3 minutes

Usually happens because:

  • Client sent 'Expect
  • Proxy server intermediate validation checks

🔍 Quick Checklist:

Meaning

The HTTP 100 Continue informational status code indicates that everything so far is OK and that the client should continue the request or ignore the response if the request is already finished.

Root Causes

  • Client sent 'Expect: 100-continue' header to verify server acceptance before uploading large file payload body data.
  • Proxy server intermediate validation checks passing authentication headers successfully.
CauseFrequency
Client sent 'Expect⭐⭐⭐⭐⭐
Proxy server intermediate validation checks⭐⭐⭐⭐

Common Mistakes

  • Client sending the body payload immediately without waiting for the 100 Continue response.
  • Server rejecting 100-continue headers due to proxy timeout limits.

How to Fix

1Client should wait for 100 Continue response before streaming the request body data.
2Configure reverse proxies to allow expect header pass-through pipelines.

Framework-Specific Examples

Handling expect headers in Express server applications.

Express Example
const express = require('express');
const app = express();

app.post('/upload', (req, res) => {
  res.status(200).send('Upload completed');
});

Server Configuration Examples

Setting buffer and client body size thresholds to handle expect operations.

Nginx Config
server {
    client_max_body_size 10M;
    client_body_buffer_size 128k;
}

Prevention

  • Verify intermediate load balancers support HTTP Expect headers correctly.
  • Ensure client libraries timeout gracefully if the server fails to return 100.

Frequently Asked Questions (FAQ)

Q: What is the main purpose of 100 Continue?

It allows clients to check if the server will accept a large request (based on headers like authentication or content-length) before sending the actual body, saving bandwidth and processing time.

Q: Does standard Axios support 100-continue automatically?

Yes, Node.js HTTP client layers manage Expect headers, but explicit configuration may be needed in web browser clients since browsers stream uploads differently.

Q: Can Nginx intercept and return 100-continue?

Yes, Nginx handles 100-continue handshakes automatically on behalf of upstream servers to prevent unauthenticated payload streaming.

Q: Is there a performance downside to using 100 Continue?

Yes. It adds an extra network round-trip for headers checking, which can slow down small payload requests. It should only be used for large uploads.

Still having this problem?

Didn't solve your problem?

SuggestRequest Error