[DEV-89/BE] feat: 면접 pdf 파일 업로드 api 개발#387
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
Summary of ChangesHello @zxc534, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! 이 풀 리퀘스트는 면접 PDF 파일을 AWS S3에 업로드할 수 있도록 백엔드 기능을 구현합니다. 사용자가 PDF 파일을 안전하게 업로드할 수 있도록 사전 서명된 URL을 생성하는 새로운 API 엔드포인트와 관련 서비스 로직 및 S3 설정이 추가되었습니다. Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
There was a problem hiding this comment.
Code Review
이 PR은 면접용 PDF 파일을 S3에 업로드하기 위한 pre-signed URL을 생성하는 API를 추가합니다. S3 설정, 속성, 그리고 URL 생성 로직이 포함된 구현입니다. 코드는 전반적으로 잘 작성되었지만, 몇 가지 개선점을 제안합니다.
주요 피드백:
createPdfUploadUrl메서드는 데이터베이스에 쓰기 작업을 수행하지 않으므로@Transactional(readOnly = true)로 변경하여 성능을 향상시키고 메서드의 의도를 명확히 하는 것이 좋습니다.- S3 객체 키가 현재 결정적(deterministic)이고 추측 가능합니다. UUID와 같은 임의의 값을 키에 포함하여 고유성을 보장하고 보안을 강화하는 것이 좋습니다.
- 현재 구현에서는 파일 업로드 후 서버에 파일 참조가 저장되지 않아 기능이 미완성 상태입니다.
Interview엔티티의pdfUrl필드가 업데이트되지 않습니다. 파일 업로드 완료를 서버에 알리고 파일 정보를 데이터베이스에 저장하는 후속 로직이 필요해 보입니다.
backend/src/main/java/com/shyashyashya/refit/domain/interview/service/InterviewService.java
Outdated
Show resolved
Hide resolved
backend/src/main/java/com/shyashyashya/refit/domain/interview/service/InterviewService.java
Show resolved
Hide resolved
kckc0608
left a comment
There was a problem hiding this comment.
LGTM 수고 많으셨습니다!
설에 댕글 리퀘스트.. 결국 보내야 하는군요..
관련 이슈
close #90
작업한 내용
PR 리뷰시 참고할 사항
AWS access key를 발급할 수 있는 권한이 없어서 로컬 테스트가 불가능합니다.
EC2에는 권한을 부여할 수 있어서 배포 후 확인이 필요해 보이네요.
access key는 내일 댕글님께 요청드리려합니다.