sanic-org/sanic

ASGI exceptions outside handlers should be able to pass status

Open

#2,718 opened on Mar 19, 2023

 (0 comments) (0 reactions) (0 assignees)Python (1,515 forks)batch import
beginnerhelp wanted

Repository metrics

Stars
 (17,623 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

An exception raised in the lifecycle (but not handler) of a request on an ASGI-served application should be able to pass a status code.


In my experiment, raising a BadRequest in asgi.py will cause the ASGI server return 500 error, instead of 400. This seems out of the scope of this PR, but I am wondering whether we should change the raised error to ServerError or others before we figure out how to let ASGI server return a 400 error.

Originally posted by @ChihweiLHBird in https://github.com/sanic-org/sanic/pull/2606#discussion_r1133448078

Contributor guide