diff --git a/src/main/java/com/easyvel/server/tag/TagController.java b/src/main/java/com/easyvel/server/tag/TagController.java index 06c8dc5..e73d142 100644 --- a/src/main/java/com/easyvel/server/tag/TagController.java +++ b/src/main/java/com/easyvel/server/tag/TagController.java @@ -73,6 +73,7 @@ public List getUserTagPostList(@RequestParam String search, } @ApiOperation(value = "현재 인기있는 태그 목록", notes = "vol 파라미터에 받을 태그 수량을 입력") + @EasyvelTokenApiImplicitParams @GetMapping("/hot-tag") public TagList getHotTagList(@RequestParam(defaultValue = "10") int vol) throws IOException { return tagService.getHotTagList(vol); diff --git a/src/main/java/com/easyvel/server/tag/TagService.java b/src/main/java/com/easyvel/server/tag/TagService.java index c0d034f..b3925e5 100644 --- a/src/main/java/com/easyvel/server/tag/TagService.java +++ b/src/main/java/com/easyvel/server/tag/TagService.java @@ -21,6 +21,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; +import java.util.regex.Pattern; @Slf4j @Service @@ -43,6 +44,8 @@ public void addTag(String uid, String tagName) { User user = getUserByUid(uid); Tag tag = getElseMakeTag(tagName); + checkBlankAndSpecial(tagName); + if (containsTag(user, tag)) throw new IllegalArgumentException("이미 추가한 태그입니다."); @@ -50,6 +53,13 @@ public void addTag(String uid, String tagName) { userTagRepository.save(userTag); } + //Todo: 다른 곳에서도 필요할지도..? 이후 추가 적용하기 + private void checkBlankAndSpecial(String tagName) { + String pattern = "^[0-9|a-z|A-Z|ㄱ-ㅎ|ㅏ-ㅣ|가-힣]*$"; + if (!Pattern.matches(pattern, tagName)) + throw new IllegalArgumentException("공백, 특수문자는 허용되지 않습니다."); + } + public void deleteTag(String uid, String tagName) { User user = getUserByUid(uid); Tag tag = getElseMakeTag(tagName); @@ -69,6 +79,7 @@ public void deleteTag(String uid, String tagName) { * @throws IOException */ public List getPostDtoListByTag(String uid, String tag) throws IOException { + //Todo: 없는 태그를 긁어오려할 경우 체크하는 로직 만들기 List userSubscribeList = getSubscribeNameList(uid); Elements postsElements = getTagPostsElements(tag);