velopert / velog-client

https://velog.io/
Other
685 stars 131 forks source link

Bug : 소셜 계정 프로필 설정 시 유효성 검사가 필요합니다 #553

Closed beberiche closed 5 months ago

beberiche commented 5 months ago

지난번 게시물 내 깃허브 url에 관련하여 버그 이슈를 남겼던 사용자입니다. https://github.com/velopert/velog-client/issues/545 덕분에 기존 문제가 있었던 게시물들은 대부분, 개선이 완료된 것으로 보입니다.

그러나 수정된 코드를 확인해본 결과 다음과 같은 문제가 발생할 수 있다고 판단했습니다.



설정 내 소셜 정보의 입력창에 유효성 검사가 필요합니다!

코드를 확인해본 결과 split("/") 을 통해 문제를 처리하신 것으로 확인됩니다. 하지만 러한 경우, 입력창에 사용자가 오타로 "/" 를 삽입하는 경우 다시 문제가 발생할 수 있습니다.

예를들어 깃허브 계정이 abcd 라고 했을 때 사용자 실수로 ab/cd 를 입력하는 경우, 다음과 같이 이동링크가 설정되는 것을 볼 수 있습니다.

image image

이러한 문제를 방지하기 위해, 소셜 계정 입력에 대하여 특수 문자에 대한 유효성 검사를 진행하는게 좋다고 판단했습니다. 가능하다면 "/" 외에도, github, twitter, facebook 등 소셜 계정 마다 이용되지 않는 문자 혹은 특수문자들을 포함하여 함께 유효성 검사를 진행해주면 좋을 거 같습니다.

현재 벨로그는 프로필 설정 내에 이메일 주소 설정에 대한 유효성 검사를 이미 진행하는 것으로 알고 있는데, 이를 재사용하면 손쉽게 처리할 수 있다고 여겨집니다.

image



velog-client contribute 관련하여...

바쁘신 와중에서 계속 이슈를 보내는 것도 아닌듯 하여, contribute 를 통해 문제 개선에 기여를 하려고 했으나, 제가 아직 많은 부분을 알지 못해서인지, 로컬 환경에서 프로젝트가 정상적으로 실행되지 않았습니다.

제가 실행한 방식은 다음과 같습니다.

  1. yarn build:server 이후 yarn start:server:local 실행 -> redis 연결 에러 확인
  2. velog-serverredis 정보를 토대로 redis container 실행 후 yarn start:server:local 재실행
  3. 이후 yarn start 실행, 브라우저에 localhost:3001 포트가 잡히지만 웹 페이지 무한 요청 및 무한 새로고침 발생

현재 상황에서 어떤 부분이 실행에 문제가 되는지 파악하기 어려워 질문을 남깁니다! 바쁘시겠지만 여유가 되실 때 해당 부분에 대한 답변도 함께 알려주시면 감사하겠습니다.

https://github.com/velopert/velog-client/assets/71657609/4004d6d9-6b72-47e9-a00d-b50f12814bc2

winverse commented 5 months ago

안녕하세요!

이렇게 Velog에 애정을 가지고 이용해주셔서 감사합니다 또한 소중한 의견도 너무너무 감사드린다는 점을 먼저 말씀드립니다 :)

설정 내 소셜 정보의 입력창에 유효성 검사가 필요합니다!


코딩을 하다보면 여러가지 에러를 처리 해야하는 상황이 있을 것 입니다. 그리고 말씀 주신 케이스도 분명 그 범주에 들어간다는 생각이 듭니다 그러나 여러가지 이유를 들어서 모든 에러를 처리 하지 않고 몇몇 케이스를 선택하여 프로그래머는 에러를 처리하게 됩니다. 그 과정에서 놓치는 치명적인 에러가 있을 수 있고 그렇다면 프로그래머 상황에 상관 없이 반드시 처리 해야 한다고 생각하고 있습니다. 그러나, 개인의 주관이 들어 가겠지만 이번 케이스는 치명적 인가 따져보면, 저는 그렇지 않다고 생각하고 있습니다.

Pull request 관련


처음 Chaf 에 입사해서 인수인계를 받았을때, 오로지 .env 파일만 받아서 실행해도 작동을 잘했던걸로 기억하고 있습니다. 다만 node version 이 client와 server 쪽이 다른데, .env 값을 잘 채워주시고 velog-client 에서는 node16 lts에서 yarn start velog-server 에서는 node 18 lts 에서 yarn dev하면 작동을 됩니다

방금도 작동을 잘하고 있어요!

또 다른 도움이 필요하시면 언제든지 의견 남겨주시길 바랍니다 항상 친절하게 열심히 도와드리도록 하겠습니다.

감사합니다 :) 좋은 하루 보내세요!

beberiche commented 5 months ago

앗 혹시 로컬 실행 환경에서의 velog-client와 velog-server의 .env 정보를 혹시 얻을 수 있을까요?? 제 나름대로 맞춰보긴 했는데 제 환경에서는 연결이 잘 안되더라구요ㅠ

winverse commented 5 months ago

.env 정보를 알려드릴 수 는 없지만 제가 한번 봐드릴게요 혹시 .env 내용이 공개 되길 원치 않는다면 public.winverse@gmail.com으로 보내주시면 한번 봐드리겠습니다 :)