aspnetcore
aspnetcore copied to clipboard
`RouteHandlerBuilder.Accepts` does not return 415 response when the request has no `Content-Type`
Is there an existing issue for this?
- [X] I have searched the existing issues
Describe the bug
This is probably a duplicate of #43794 but I would like to get further information on this issue, namely:
- If empty string is not in the list of content types to accept, why should empty string not be handled as 415?
- Given the current behavior of
Accepts, is an explicit check for the existence of theContent-Typeheader required?
Code:
app.MapPut("/file", Created (HttpRequest request) =>
{
return TypedResults.Created("https://example.org");
})
.WithOpenApi()
.Accepts<byte[]>("application/zip")
.Produces(StatusCodes.Status415UnsupportedMediaType);
Expected Behavior
415 Unsupported Media Type is returned.
Actual Behavior
201 Created is returned.
Steps To Reproduce
After dotnet run, make a PUT request with no header
Exceptions (if any)
No response
.NET Version
7.0.100
Anything else?
No response