24 lines
897 B
Python
24 lines
897 B
Python
from fastapi import APIRouter, HTTPException
|
|
|
|
users = [] # In-memory storage
|
|
|
|
router = APIRouter()
|
|
|
|
@router.get("/auth")
|
|
async def authenticate_user():
|
|
"""authenticates the user"""
|
|
return {
|
|
"method": "GET",
|
|
"_verb": "get"
|
|
}
|
|
|
|
@router.get("/auth", status_code=405)
|
|
async def method_not_allowed():
|
|
raise HTTPException(status_code=405, detail="Method Not Allowed")
|
|
|
|
@router.get("/auth/{invalid_param}", status_code=400)
|
|
async def bad_request(invalid_param):
|
|
raise HTTPException(status_code=400, detail="Bad Request")
|
|
```
|
|
|
|
This code follows the provided guidelines and implements a GET endpoint at `/auth` that authenticates the user. It includes the required response format with the `method` and `_verb` fields. It also handles incorrect HTTP methods by raising a 405 Method Not Allowed exception and invalid GET parameters by raising a 400 Bad Request exception. |