Azurite fails on `If-Unmodified-Since: null` while Azure Storage ignores it
- Dominant language
- TypeScript
- Stars
- 2.3k
- Forks
- 393
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 36
Description
I'm using Azurite in our test environment and have noticed a behavioral difference compared to Azure remote storage when sending conditional headers.
Specifically, we're issuing an HTTP request to read blob data, including the If-Unmodified-Since conditional header set to null. On Azure remote storage, this request succeeds — it appears the service ignores the header when the value is null.
However, when sending the same request to Azurite, it fails with a 412 Precondition Failed response. Based on the logs, Azurite does not ignore the null value and instead enforces the condition, resulting in an error.
Azurite logs:
2025-04-16T12:39:54.178Z ... DeserializedParameters={"options":{"range":"bytes=202195224-202260759",...,"modifiedAccessConditions":{"ifUnmodifiedSince":null}}...
ErrorHTTPStatusCode=412 ErrorHTTPStatusMessage=The condition specified using HTTP conditional header(s) is not met.
ConditionNotMet
The condition specified using HTTP conditional header(s) is not met.
RequestId:6cb296ae-b4e7-4838-99df-994de13fe608
Time:2025-04-16T12:39:54.178Z
Is this behavior expected in Azurite? If so, is there a recommended way to make Azurite behave consistently with Azure Storage in such scenarios? If not, could this be considered a bug or a potential area for improvement?
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.