[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
안녕하세요! 개발을 시작한지 얼마되지 않은 개발자입니다. 수업의 내용을 조금 인용하면 "nodeJS 는 싱글 스레드 모델이고, 이벤트 룹이 앞단에서 nonBlocking 요청 빠르게 수행하고 만일 Blocking 요청이 들어온다면 워커 스레드에 넘긴다. " 라고 이해했습니다. 하지만 워커 스레드를 사용하게된다면 그것이 싱글 스레드라는 이름에 맞는건지 의구심이 듭니다. 단순히 이벤트 룹이라는 특정 스레드가 앞단에서 Blocking 요청과 nonBlocking 요청을 구분해서 처리를 하기에 싱글 스레드라는 말이 나온건가요? 그리고 이벤트 룹이 Blocking 요청과 nonBlocking 요청을 나누는 기준 또한 궁금합니다. 마지막으로 구글링을 하며 본 정보에 의하면 JavaScript 가 싱글 스레드 기반의 언어이고, NodeJS는 스레드 풀을 미리 생성하여 워커 스레드들을 미리 생성해 둔 뒤, 각 워커 노드에서 JavaScript 를 실행하여 멀티 스레드를 가능하게 한다는 글을 보았는데 이 내용이 맞다면 NodeJS 는 싱글 스레드 기반 프레임워크가 아닌것으로 받아드려도 괜찮을까요?
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
너무 단순한 것 같은데, 몇시간 확인해봐도 해결이 되지 않아서 이렇게 질문드립니다. post 로 1:N을 생성해서 확인해 보면, 아래 이미지 처럼 post에 빈배열이 나옵니다. get 요청, relations 은 아래와 같습니다. 강의를 보면서 작성한 코드입니다. 이전 내용인 profile 은 잘 되는데... post 1:N 은 무엇이 문제일까요...?
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
const qr = this.dataSource.createQueryRunner(); ERROR [ExceptionsHandler] Cannot read properties of undefined (reading 'createQueryRunner') TypeError: Cannot read properties of undefined (reading 'createQueryRunner') at TransactionInterceptor.intercept (C:\Users\Administrator\Desktop\cf_sns\src\common\interceptor\transaction.interceptor.ts:21:32) 이 에러가 떠서 postman으로 테스트를 진행하지 못하고있습니다. dataSource도 typeorm에서 import 해서 사용했는데 컨트롤러에서 트랜잭션을 사용할때는 됐다가 인터셉터로 따로 빼서 사용하려고할 때 발생한 오류입니다.
비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지
안녕하세요 강의를 듣고 있는 학생입니다. 다름이 아니라 워크밴치 접속 문제 때문에 질문 드립니다. 워크밴치를 접속하려하면 위와 같은 문제가 계속 발생하고 있습니다. mysql 8.x 버전부터는 bind-address를 주석처리 할필요가 없다하여 그 부분은 넘어간상태로 계속진행하엿습니다. https://1mini2.tistory.com/87 이 링크를 보고 따라 해보고 있는데 mysql -h 3.36.28.138 -u root -p 이명령어를 쳣을때 위와같이 출력이 되지 않고 있습니다.
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
바로 전 강의에서부터 http.을 하면 자동완성이 안되었는데, 그냥 직접 다 작성해서 서버를 실행시키니깐 되긴 되더라구요. 근데 이번강의도 http모듈 관련 자동완성을 계속 쓰는 것 같길래 질문드립니다. nodeJs에 기본으로 내장되어있는 모듈이라고 하는데 저는 왜 자동완성이 안될까요?
runserver을 하기 위해서 manage.py 를 사용하는데 만약에 mysite를 이용하기 위해서는 mysite에 있는 manage.py 를 이용해야하고 dealershop을 이용하기 위해서는 거기있는걸 이용해야하는건가요?? 처음에 mysite의 manage.py 를 이용해서 하다가 inventory로 안넘어가길래 무슨 문제가 있나 했어요ㅠㅠ
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
refresh token을 재발급 하기 위한 작업 과정에 대해 궁금한 것이 있어서 질문드립니다. 저는 access token이 만료되면 refresh token을 통해 재발급을 받으려고 시도하고, 이때 refresh token마저 만료된 상태라면 다시 로그인 하여 새로운 access token과 refresh token을 발급받아야 한다고 생각하고 있었습니다. 그런데 refresh token을 재발급하는 로직도 강의 내용에 있더라구요. 강의에서 refresh token이 만료되면 /auth/token/refresh api로 refresh token을 재발급 받으면 된다라고 설명해주셨는데, 만료된 refresh token으로 refresh token을 재발급 받는 건 좀 이상한 것 같아서요. 아니면 refresh token이 만료되지 않았는데 refresh token을 재발급 해야 하는 요청이 따로 있을까요?
[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
*UserController @GetMapping("/users/{id}") public EntityModel<User> retrieveUser(@Parameter(description = "사용자 ID", required = true, example = "1") @PathVariable int id) { User user = service.findOne(id); if (user == null) { throw new UserNotFoundException("id-" + id); } EntityModel entityModel = EntityModel.of(user); WebMvcLinkBuilder linkTo = linkTo(methodOn(this.getClass()).retrieveAllUsers()); entityModel.add(linkTo.withRel("all-users")); // http://127.0.0.1:8080/users try { return entityModel; } catch (Exception ex) { throw new RuntimeException(); } } @PostMapping("/users") public ResponseEntity<User> createUser(@Valid @RequestBody User user) { User savedUser = service.save(user); URI location = ServletUriComponentsBuilder.fromCurrentRequest() .path("/{id}") .buildAndExpand(savedUser.getId()) .toUri(); return ResponseEntity.created(location).build(); } 두 클래스가 비슷하게 느껴져서 질문드립니다. EntityModel 클래스는 Spring HATEOAS에서 지원하는 클래스로 위의 코드로 특정 사용자 정보를 조회하면서 동시에 관련 리소스로 쉽게 이동할수 있는 링크를 제공을 도와주는 클래스고 ResponseEntity클래스는 Spring MVC에서 지원하는 클래스로 HTTP 응답을 제어할 수 있도록 도와주며, 상태 코드, 헤더, 바디 등을 포함할수 있게 도와주는 클래스다. 라고 이해하면될까요 ?? 그렇기 때문에 Get에서는 해당 자원에 대한 추가적인 리소스를 제공하기 위해 EntityModel을 사용하고 Post에는 해당자원의 생성에 대한 201 상태코드를 제공하고 해당자원에 위치를 제공하기위해 ResponseEntity를 사용한것 인가요?? Post에도 반환 값으로 EntityModel을 사용을 하는 경우도 있을까요?? 찾아보니 ResponseEntity<EntityModel<User>> 이렇게 사용하게 되는 경우 상태 코드와 함께 EntityModel<User>를 응답 본문으로 반환이 가능하다고 하는데 그렇다면 함께 사용하는 것이 데이터의 표현과 응답의 정확성을 높여줄것으로 예상이 되는데 이렇게 사용도 자주하는지 궁금합니다!
안녕하세요. 항상 잘 보고 있습니다. 감사합니다. ChatGPT API Key 발급받고 python 예제 복사해서 실행 여부 확인하고 있는데 처음부터 에러가 발생하는데 당췌 알 수가 없습니다. 어떻게 해결해야 할지 조언 부탁드립니다. 막혀서 진행을 하지 못하고 있습니다. completion = openai.ChatCompletion.create( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "Q:\ChatGPT_원고자동생성기\venv\Lib\site-packages\openai\lib\_old_ api.py ", line 39, in __call__ raise APIRemovedInV1(symbol=self._symbol) openai.lib._old_api.APIRemovedInV1: You tried to access openai.ChatCompletion, but this is no longer supported in openai>=1.0.0 - see the README at https://github.com/openai/openai-python for the API. You can run `openai migrate` to automatically upgrade your codebase to use the 1.0.0 interface. Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28` A detailed migration guide is available here: https://github.com/openai/openai-python/discussions/742 참고로 사용하고 있는 파이썬 버전(3.11.5)과 openai 버전(1.14.3버전입니다. 코드를 수정해야 할 듯한데 ChatGPT에 질문을 해도 해결이 안됩니다. 해결하신 분 있으시면 답변 부탁드릴께요~
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
안녕하십니까. 강의 잘 듣고 있습니다 🙂 다름이아니라 궁금한 점이 있어 문의를 드리게 되었습니다. token 계열은 접근시 token 그 자체를 사용하기 때문에 DB 조회가 없어 장점이 있는 로그인 방식이라 생각이 드는데요. 1) 강의에서 처럼 access token 을 이용하여 항상 db에서 사용자 데이터를 조회해 온다면 그런 장점이 사라지지 않을까요? 2) 또한 부하가 많이 걸리지 않을까요?
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
update 프로퍼티를 false로 작성했는데도 500에러가 발생하지 않네요 response에는 변경된 값이 나옵니다. http://localhost:3000/users/:id { "id": 2, "title": "null0", "createdAt": "2024-03-24T23:59:11.774Z", "updatedAt": "2024-03-24T23:59:11.774Z", "version": 1, "additionalId": "a320e186-a44a-4dda-9af3-9cd52af4155c" } 그런데 DB에 가보면 또 값은 변경되어 있지 않더라구요 2번 user의 title 값은 null이 그대로 찍혀있습니다. 왜 500에러가 발생하지 않는건가요?
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
API 응답 받고 포스트맨의 Tests 탭에 코드를 저장했는데 Environments 탭의 accessToken 변수에 값이 안담기더라구요 혹시 몰라 Globals 탭에서확인했는대도 거기에도 없던데 왜 이런지 알 수 있을까요? API TestResults 에는 성공이라는 메시지는 나옵니다.