// 1. 페이지의 에서 최대한 위에 이 코드를 붙여넣으세요. // 아래의 메타 태그를 복사해 사이트 홈페이지의 섹션에 붙여 넣어주세요. //2. 여는 태그 바로 뒤에 코드를 붙여넣으세요.

새소식

반응형
Python/ERROR LOG

TypeError: FastAPI.__call__() missing 1 required positional argument: 'send'

  • -
반응형

gunicorn으로 서버를 실행하니 다음과 같은 에러가 나왔습니다.

 

gunicorn app:app --bind 127.0.0.1:8020

 

 [ERROR] Error handling request /docs

Traceback (most recent call last):
  File "/home/user/anaconda3/envs/forge/lib/python3.10/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/home/user/anaconda3/envs/forge/lib/python3.10/site-packages/gunicorn/workers/sync.py", line 178, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
TypeError: FastAPI.__call__() missing 1 required positional argument: 'send'

 

TypeError: FastAPI.__call__() missing 1 required positional argument: 'send'

 

위처럼 에러가나는건 uvicorn worker를 지정해주지 않아 동기 모드인 wsgi 인터페이스가 적용되어서 나타난 오류 입니다.

 

비동기 모드인 asgi로 실행되도록 비동기 uvicorn worker를 지정해주는 명령어를 사용하면 됩니다.

반응형
gunicorn -k uvicorn.workers.UvicornWorker --access-logfile ./gunicorn-access.log app:app --bind 127.0.0.1:8020 --workers 10 --daemon

 

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.