diff --git a/README.md b/README.md index c92a9464..a557279f 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,16 @@ # springboot-url-shortener SprintBoot URL Shortener 구현 미션 Repository 입니다. +## 요구사항 +각 요구사항을 모두 충족할 수 있도록 노력해봅시다. +- [ ] URL 입력폼 제공 및 결과 출력 +- [ ] URL Shortening Key는 8 Character 이내로 생성 +- [ ] 단축된 URL 요청시 원래 URL로 리다이렉트 +- [ ] 단축된 URL에 대한 요청 수 정보저장 (optional) +- [ ] Shortening Key를 생성하는 알고리즘 2개 이상 제공하며 애플리케이션 실행중 동적으로 변경 가능 (optional) + -# Short URL Service +## Short URL Service ### 읽으면 좋은 레퍼런스 - [Naver 단축 URL API](https://developers.naver.com/docs/utils/shortenurl/) - [짧게 줄인 URL의 실제 URL 확인 원리 및 방법](https://metalkin.tistory.com/50) @@ -18,10 +26,8 @@ SprintBoot URL Shortener 구현 미션 Repository 입니다. 3. Unique Key와 원본 URL을 DB에 저장합니다. 4. bitly.com/{Unique Key} 로 접근하면, DB를 조회하여 원본 URL로 redirect합니다. -## Short URL의 특징 - +### Short URL의 특징 단축 URL서비스는 간편하지만, 단점(위험성)이 있습니다. - 링크를 클릭하는 사용자는 단축된 URL만 보고 클릭하기 때문에 어떤 곳으로 이동할지 알 수 없습니다. - Short URL 서비스는 주로 요청을 Redirect 시킵니다. (Redirect와 Forward의 차이점에 대해 검색해보세요.) @@ -31,15 +37,5 @@ SprintBoot URL Shortener 구현 미션 Repository 입니다. - 당연하지만 이미 존재하는 키를 입력하여 들어오는 사람이 존재할 수 있다. - 기존의 원본 URL 변경되었더라도 단축 URL을 유지하여, 혼란을 방지할 수 있다. - -## 예시 사이트 +### 예시 사이트 [https://url.kr/](https://url.kr/) - - -## 요구사항 -각 요구사항을 모두 충족할 수 있도록 노력해봅시다. -1. URL 입력폼 제공 및 결과 출력 -2. URL Shortening Key는 8 Character 이내로 생성 -3. 단축된 URL 요청시 원래 URL로 리다이렉트 -4. 단축된 URL에 대한 요청 수 정보저장 (optional) -5. Shortening Key를 생성하는 알고리즘 2개 이상 제공하며 애플리케이션 실행중 동적으로 변경 가능 (optional)