Want-Digest

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

Note: This header was removed from the specification in draft 8. Use Want-Content-Digest instead. For id-* digest algorithms, use Want-Repr-Digest.

The Want-Digest request or response HTTP header requests the other side to provide a digest using the Digest header.

The header contains identifiers for one or more digest algorithms that the sender wishes the server to use to create the digest. The request may use quality values to indicate its preference/order for particular digest algorithms.

If Want-Digest does not include any digest algorithms that the server supports, the server may respond with:

  • a digest calculated using a different digest algorithm, or
  • a 400 Bad Request error, and include another Want-Digest header with that response, listing the algorithms that it does support.

See also the Digest header.

Header type Request header, Response header
Forbidden header name no

Syntax

http
Want-Digest: <digest-algorithm>

// Multiple algorithms, weighted with the quality value syntax:
Want-Digest: <digest-algorithm><q-value>,<digest-algorithm><q-value>

Directives

<digest-algorithm>

Digest algorithms are defined in Digest Headers.

  • Permitted digest algorithms values include: unixsum, unixcksum, crc32c, sha-256 and sha-512, id-sha-256, id-sha-512
  • Deprecated algorithms values include: md5, sha, adler32.
<q-value>

The quality value to apply to that option.

Examples

http
Want-Digest: sha-256
Want-Digest: SHA-512;q=0.3, sha-256;q=1, md5;q=0

Basic operation

The sender provides a list of digests which it is prepared to accept, and the server uses one of them:

Request:

http
GET /item
Want-Digest: sha-256;q=0.3, sha;q=1

Response:

http
HTTP/1.1 200 Ok
Digest: sha-256=X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=

Unsupported digests

The server does not support any of the requested digest algorithms, so uses a different algorithm:

Request:

http
GET /item
Want-Digest: sha;q=1

Response:

http
HTTP/1.1 200 Ok
Digest: sha-256=X48E9qOokqqrvdts8nOJRJN3OWDUoyWxBf7kbu9DBPE=

The server does not support any of the requested digest algorithms. In this case it responds with a 400 error and includes another Want-Digest header, listing the algorithms that it does support:

Request:

http
GET /item
Want-Digest: sha;q=1

Response:

http
HTTP/1.1 400 Bad Request
Want-Digest: sha-256, sha-512

Specifications

No specification found

No specification data found for http.headers.Want-Digest.
Check for problems with this page or contribute a missing spec_url to mdn/browser-compat-data. Also make sure the specification is included in w3c/browser-specs.

Browser compatibility

BCD tables only load in the browser

See also