전체 글
-
20230131 TIL 은행 목록을 어떻게 관리하는 것이 좋을까?TIL 2023. 1. 31. 16:59
환전하기 기능을 구현하는데 있어서 은행명과 계좌번호를 검증하는 단계에서 위와 같이 많은 은행을 선택할 수 있게 목록을 보여줘야 했다. 실제로 내가 필요한 것은 은행코드이기 때문에, 서버에서도 은행 목록을 가지고 있어야 한다. 마크업을 먼저 작업을 하는 편이었기 때문에 마크업을 하면서 실제로 하나하나 하드코딩을 해보았는데, 너무 많아서 힘들었다. 그래서 은행 목록을 api로 서버에서 받아올까? 라는 생각이 들었다. 만약 이 방식을 이용하면 지원하는 은행이 바뀐다면 서버에서만 바꿔주면 되니 좋을 것 같기도 하였다. 그런데 불필요한 네트워크 통신을 늘리는 것이 아닐까 하는 의문도 함께 들었다. 또 다른 대안은 프론트에서 은행 목록을 배열로 가지고 있고, 리액트에서 map을 이용하는 방법이었다. 즉, API를 ..
-
20230130 TIL 일잘러가 되는 길TIL 2023. 1. 30. 21:09
노아님께서 항상 해주신 말씀이 있었다. '개발자에게 개발도 중요하지만 더 중요한 게 있어요!' 개발자에게 개발보다 더 중요한 것은 뭘까? 개발자는 개발자이기 전에 직장인이다. 따라서 일을 잘해야 한다. 그런데 일을 잘한다는 것은 무엇일까? 개발은 비즈니스가 잘 되기 위한 수단이다. 즉, 결국 비즈니스가 잘 되게 하는 것이 일을 잘 하는 것이다. '코딩의 신' 아샬님께서는 개발을 하지 않고 문제를 풀어낼 수 있는 게 가장 베스트라고 하셨다고 한다. 그 이유는 개발이 꽤 많은 리소스를 필요로 하기 때문일 것이다. 만약 개발 없이 해결할 수 있다면 다른 중요한 사안을 개발할 수 있으니 훨씬 좋은 성과를 낼 수 있다. 오늘 스프린트 점검 중에 홀맨님께서 해주신 말씀이 있다. CRUD중 R을 먼저 해서 가짜데이터..
-
ofCORS 포트폴리오 6주차 주간회고회고 2023. 1. 30. 20:53
벌써 디자인을 입히는 주간을 제외하고 데모데이까지 1주일이 남았다. (오늘 하루도 이미 지났으니 6일!) 이번 스프린트도 목표의 80% 정도를 달성했다. 1주차 38, 2주차 23, 3주차 45, 4주차 41, 5주차 42로 평균적으로 41정도를 해낼 수 있는 것으로 보인다. 그래서 이번 주 목표는 완수를 위해 43포인트를 목표치로 잡았다. 불확실성을 줄이기 위해 해보지 않은 결제 모듈을 붙인 포인트 충전 기능부터 시작했는데, 약 3일이 걸렸던 것 같다. 만약 해보지 않았다는 이유로 미뤄뒀다면 절대로 스프린트 내에 끝내지 못했을 것 같다. 이번 스프린트에는 실명인증과 계좌인증이라는 불확실성이 있다. 이번에도 불확실성을 줄이기 위해 이 부분부터 작업을 하도록 하고, 꼭 목표치를 달성할 수 있도록 하루에 적..
-
20230129 TIL GET요청 시 body를 보낼 수 있을까?TIL 2023. 1. 29. 22:31
짝꿍님께서 GET 요청 시 body를 실어 보낼 수 있냐는 질문을 며칠 전에 해주셨다. 갑자기 궁금해져서 찾아 보았다. 지금은 스펙이 완화되긴 하였지만 HTTP/1.1에 따르면 Get요청 시 body에 따라 다른 응답을 주지 않는 것이 바람직하다고 되어 있다. 그리고 UnityWebRequest 는 get요청으로 body를 함께 보내면 post요청으로 인식한다고 한다. 스프링 서버에서 구현만 해둔다면 동작하는데 문제는 없을 것 같다. 하지만 GET요청은 비교적 비용이 적은 요청에 해당하기 때문에 query param으로 처리할 수 있다면 GET요청을 사용하고 body로 보내야하는 경우라면 POST요청을 활용하는 게 좋을 것 같다. 앞으로도 질문을 받았을 때 나도 잘 모르겠는 부분은 따로 TIL로 정리를 ..
-
20230128 체력을 잘 보충하면서 유종의 미를 거둬보자TIL 2023. 1. 28. 22:56
아주 아주 오랜만의 꿀같은 휴가를 보내게 되었다. 작년 8월 메가테라를 시작한 이후로 추석에도 쉼 없이 달려오다 보니 많이 체력이 약해졌다. 그래서 이번 설 연휴에는 무조건 체력을 보충하겠다는 마음을 가지고 있었고, 푹 쉬었다. 휴가 중에 2기 분들의 발표가 있어 코딩 도장에 방문을 했었는데, 짝꿍님께서 내가 많이 밝아진 것 같다는 칭찬을 해주셨다! 나는 못 느끼고 있었는데 쉬는 게 도움이 많이 되었던 것 같다. 오랜 기간 쉼 없이 달려오느라 몸이 많이 굳었고, 프로젝트의 원동력이 많이 떨어졌었는데, 설 연휴동안 휴식을 취하면서 스트레칭도 하니 몸이 조금씩 개운해졌다. 이제 정말 마무리 단계인 만큼 남은 기간도 힘을 내서 잘 마무리 지어보자!
-
20230120 TIL 사용자 경험 고려하기TIL 2023. 1. 20. 23:04
아직까지는 기획했던 것에서 플로우가 바뀌는 경우가 많지는 않았다. 하지만 기획은 처음부터 완벽하게 하기란 쉽지 않은 일이고 언제든 수정될 수 있는데, 그게 바로 오늘이었다. 경로의존성 때문인지 바꾸지 않고 작업할 방법을 처음에는 찾으려고 했지만 결국 바꾸는 것이 낫다는 판단을 하게되었다. 구매 결제 관련 작업을 하면서 작업을 기존에 기획을 할 때는 결제 이후에 바로 구매 내역들 목록을 보여주는 방식으로 처음에는 기획을 했었다. 그런데 생각해보니 방금 결제가 제대로 되었는지 확인하는 게 먼저라는 생각이 들었다. 그래서 결제 성공페이지를 보여주고, 구매 내역은 따로 보여주려고 한다. 뭔가 맞지 않는 기획을 억지로 끼워맞추려는 느낌이 든다면 기획을 수정하는 방법을 고려하도록 하자!
-
20230119 TIL axios, msw에서 헤더를 다루는 법TIL 2023. 1. 19. 17:55
결제 관련해서 303 See Other 응답에서 header로 redirect url을 보내주기 때문에, axios와 msw에서 헤더를 다뤄야 했는데 처음 해봐서 살짝 헤매긴 했지만 공식 문서를 보고 해결을 하였다. axios에서 응답값의 header 중 Location에 해당하는 값을 가져오려면 response.headers.location 처럼 받아올 수 있다. 테스트 서버에서도 실제 서버처럼 header에 Location을 실어 보내줘야 했는데, msw에서는 아래와 같이 res안에 ctx.set(key, value)로 헤더를 넣어줄 수 있다. 이로써 결제 redirection에 대한 어려운 부분도 해결하였다. 하지만 redirect하는 과정에서 카카오페이측 서버가 CORS 설정을 해두지 않아 어쩔 ..
-
20230118 TIL 서버에서 외부 API에 요청하기TIL 2023. 1. 18. 17:54
카카오 API처럼 외부 API를 사용하는 경우에 서버에서 http 요청을 보내야 하는 경우가 있다. 클라이언트에서 외부 API를 사용하는 것은 내가 만든 서버에 요청하는 것과 큰 차이가 없지만, 서버에서는 API응답만 해보았지 요청을 해본 적이 없어서 어떻게 해야하나 고민이 많았는데, 스프링에서는 RestTemplate이라는 스프링에서 제공하는 HTTP 클라이언트 라이브러리가 있다고 한다! RestTemplate을 이용하면 URL로 요청을 보내거나 응답을 받을 수 있다. 아래와 같이 카카오페이 결제를 하는 과정에서 RestTemplate을 활용하였고, postForObject 메서드를 이용해서 POST요청을 보냈고, 받아온 값에서 getter를 통해 필요한 redirect url을 얻을 수 있었다. Re..