반응형
어제 공식 개강 이후 사전 캠프에서 공부한 것을 토대로 팀 프로젝트를 진행한다.
그렇게 HTML과 CSS와 오랜 시간 사투 끝에 드디어 뼈대를 완성했다.

코드를 짜다 보니 문뜩 이런 생각이 들었다.
댓글 삭제하기를 만들고 싶다.
그래서 댓글 삭제하기를 만들려다 보니 결국 댓글을 아무나 삭제하면 안되잖아?라는 생각이 들었다.
나는 댓글을 입력할 때 비밀번호를 입력받고
댓글을 삭제할 때 비밀번호를 맞게 적어야만 삭제할 수 있도록 코드를 짜보기로 했다
아래와 같이 코드를 작성하였더니
@app.route("/teampj", methods=["GET"])
def comment_get():
comment_list = list(db.orange.find({}, {'_id': False}))
return jsonify({'comments': comment_list})
아래와 같이 비밀번호를 함께 빼온다.
그렇다면 보안상 이슈가 크게 있지 않을까?

이 문제를 어떻게 해결할까 고민하다
아래와 같이 해결할 수 있을 거라고 생각했다
comment_list = list(db.orange.find({}, {'_id': False}, {'pw': False}))
하지만 이렇게 코드를 입력했을 때 또 오류가 떴다
공식 문서를 확인하고 해답을 알 수 있었다
db.collection.find(query, projection, options) 아래와 같이 쓰여있다
이것을 통해 최종으로 작성한 코드
comment_list = list(db.orange.find({}, {'_id': False, 'pw': False}))
이로써 공식 문서를 찾아보는 것을 습관화해야 한다는 것을 깨달았다.

최종적으로 해결 완료된 모습
반응형
'프로젝트' 카테고리의 다른 글
23/02/02 TIL 팀 프로젝트 장바구니 주문 API 고민 (1) | 2023.02.02 |
---|---|
내일배움캠프 청소의 원조 팀 KPT회고 (0) | 2023.01.06 |
내일배움캠프 A반 9조 개띠구조대 KPT 회고 (0) | 2022.12.08 |
내일배움캠프 노드 A반 9조 개띠구조대 프로젝트 S.A (0) | 2022.12.02 |
22/11/17 TIL 미니 프로젝트를 진행하며 .. (0) | 2022.11.18 |
댓글