- Python 3.10.10
- Django 5.0.2
- Django RESTFramework 3.14.0
- AWS EC2
- AWS RDS(Postgresql)
- gunicorn 21.2.0
- nginx 1.18.0
POST http://43.201.183.161/accounts/signup/
- Request Body
{
"username": "first_user",
"email": "[email protected]",
"password": "first_user1234",
"password_check": "first_user1234"
}
POST http://43.201.183.161/accounts/signin/
- Request Body
{
"username": "seconduser",
"password": "seconduser"
}
POST http://43.201.183.161/accounts/signout/
- Request Header
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
GET http://43.201.183.161/posts/
POST http://43.201.183.161/posts/
- Request Header
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
- Request Body
{
"title": "sixth title",
"description": "sixth description",
"tags": ["tag1", "tag2"]
}
GET http://43.201.183.161/posts/pk(int)/
PUT http://43.201.183.161/posts/pk(int)/
- Request Header
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
- Request Body
{
"title": "sixth title",
"description": "sixth description - changed",
"tags": ["tag1", "tag2"]
}
PATCH http://43.201.183.161/posts/pk(int)/
- Request Header
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
- Request Body
{
"description": "sixth description - changed twice"
}
DELETE http://43.201.183.161/posts/pk(int)/
- Request Headers
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
GET http://43.201.183.161/comments/posts/post_id(int)/
POST http://43.201.183.161/comments/posts/post_id(int)/
- Request Headers
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
- Request Body
{
"content": "third comment",
"tags": ["태그"]
}
PUT http://43.201.183.161/comments/pk(int)/
- Request Headers
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
- Request Body
{
"content": "third comment - changed",
"tags": ["태그"]
}
PATCH http://43.201.183.161/comments/pk(int)/
- Request Headers
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
- Request Body
{
"content": "third comment - changed twice"
}
DELETE http://43.201.183.161/comments/pk(int)/
- Request Headers
Authorization Token b8be3ea67513bd21203af5e3cd147e6dada27b06
GET http://43.201.183.161/tags/pk(str)/posts/
GET http://43.201.183.161/tags/pk(str)/posts/
- 태그 생성 및 삭제 로직 재고
- 쿼리 최적화
- django app 분리 기준
- SerializerMethodField()와 @property
- DRF TokenAuthentication → JWT
- 로직을 어떻게 분리하고 어디에서 담당할 것인가