묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍
혹시 이런 부분을 코드자동 완성이나 suggestion 해주는 확장프로그램 아시나요?
return render(reqeust, "polls/detail.html", {"qustion": question}) 에서 키값인 question을 qustion으로 오타내서 애러가 났었거든요. vscode에서 이 부분을 자동 완성해주는 프로그램이 있을까요? import되는 부분이 아니라서, vscode입장에서 알기 어려울 것 같기도 하네요. 프로그램이 커지면, 이거 찾다가 시간 굉장히 보낼 것 같다는 두려움이 생기네요 ㅎ
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
프론트에서 credentials: include로 설정한경우 cors 문제
안녕하세요.프론트와 백엔드 통신 중에 문제가 있어 질문드립니다.restoreAcessToken 기능을 사용하기 위해서 쿠키를 사용해야 합니다.서버측과 프론트측 주소가 다른 경우 쿠키 정보를 전송하기 위해서는credentials: 'include'로 설정해야 하잖아요?그러면 브라우저에 다음과 같은 오류가 발생합니다.Access to fetch at 'http://localhost:3000/graphql' from origin 'http://localhost:8080' has been blocked by CORS policy: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'.프론트 주소: localhost:8080백엔드 주소: localhost:3000서버측에서 cors 문제를 해결하기 위해 사용한 코드는 아래와 같습니다.app.enableCors({ origin: "http://localhost:8080", // 요청을 보내는 클라이언트의 주소를 명시 credentials: true, });오류 해결을 위해서 어떻게 해야하는 걸까요? 그리고 새 토큰을 발급 받는 아래 setRefreshToken의 코드도 수정돼야 하는지요? network 탭에서는 쿠키가 들어온게 확인이 되는데 application 탭에서는 확인이 됐다 안됐다 합니다..setRefreshToken({ user, res }: IAuthServiceSetRefreshToken): void { const refreshToken = this.jwtService.sign({ email: user.email, sub: user.userId }, { secret: process.env.JWT_REFRESH_KEY, expiresIn: "2w" }); res.setHeader("Set-Cookie", `refreshToken=${refreshToken}; path=/;`); } 답변 부탁드립니다.감사합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
백엔드 서버에 JPA를 사용해도 문제가 없을까요?
안녕하세요! 현재 제가 이해하고 있는 내용은실시간 통신을 위햐선 Socket을 사용한다 치고DB에 접근하기 위해서 백엔드 서버가 필수요소이고해당 강의에선 Blazor를 사용하고 있습니다. 다만 궁금한 것은 현재 저는 JPA로 Rest API 서버를 만들어서 회원가입/로그인 시스템 까진 구현이 완료되었는데 실무에선 어떤 걸 주로 사용하는지 궁금합니다.또한, 현재 JPA Rest API서버의 문제점은 그냥 URL만 때려 박아도 일단 호출이 가능한데.차후 보안상 이슈가 있을게 뻔한데 실무에선 어떤식으로 관리하나요??
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
각 세션을 시작하기 위한 소스코드
안녕하세요.강의를 통해 많은 도움 받고 있습니다.일하면서 배우는 중이라 필요한 내용들을 그때마다 찾아서 공부하고 있습니다. 그런데 강의 특성상 각 단계를 차례대로 따라가지 않으면 새로운 세션을 공부하기 위한 베이스 코드가 없기 때문에 어려움을 겪고 있습니다. 혹시 version2의 각 세션을 시작하기 위한 베이스 코드를 제공해주시기는 어려울까요?감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
섹션29 10-08 강의 숙제 해설 질문
안녕하세요.섹션29 10-08 강의 약 5:30 부분에서 타입스크립트 에러에 관한 숙제를 내주셨는데요. 해당 숙제와 관련된 해설 및 코드가 있는지 궁금합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
섹션22 서버개념에 대한 질문입니다.
안녕하세요? 강의 잘 듣고 있습니다.서버관련해서 몇가지 헷갈리는 개념이 있어서 질문드립니다. 서버가 백엔드만 지칭하는 용어인 줄 알았는데 프론트나 DB에도 서버개념이 있다는 것이 신기했습니다. 단순히 데이터를 제공하는 입장이면 전부 서버라는 용어를 사용해도 되는 것인가요?브라우저와 클라이언트를 같은 개념으로 생각해도 되는지요? 더 나아가 프론트까지? (저는 백엔드 개발을 공부하고 있어서 백엔드입장에서는 브라우저, 클라이언트, 프론트가 전부 같은 포지션으로 생각됩니다.)백엔드서버가 브라우저의 접속도 기다린다고 하셨는데 백엔드서버는 프론트엔드서버하고만 통신하는 것이 아닌가요?예를들어 브라우저(클라이언트?)에서 회원가입창을 클릭하고 프론트서버에서 화면을 보여줍니다.그리고 휴대폰인증번호를 입력한다고 하면, 프론트서버가 그 번호을 받아 백엔드서버로 넘겨줘서 백엔드에서 검증뒤 프론트로 보내주고, 프론트는 인증결과를 브라우저에 표시해줍니다.보통 이런 경우 백엔드는 브라우저가 아니라 프론트하고 교류를 하는 것이 아닌가 생각합니다. 근본적으로 궁금한 것은 클라이언트가 브라우저에서 이런 저런 작업(클릭, 입력)을 했을 때 브라우저, 프론트, 백엔드, DB에서 서로 어떻게 통신을 하는지 내부에서 어떤 작업들이 일어나는지등의 큰 흐름을 알고 싶은데 이건 지금 질문하기보단 강의를 끝까지 들어봐야될것 같네요 ^^;;
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
모듈 의존성 문제
@Module({ imports: [ TypeOrmModule.forFeature([Product, ProductTag, ProductCategory]), UserModule, ProductTagModule, ProductCategoryModule, ], providers: [ ProductResolver, ProductService, ], }) export class ProductModule {}위와 같은 코드에서 ProductService의 실행에 필요한 ProductTagModule과 ProductCategoryModule를 다 import 해주었는데 계속 아래와 같은 의존성 오류가 나왔습니다.Nest can't resolve dependencies of the ProductService (ProductRepository, ?, UserService, ProductCategoryService). Please make sure that the argument ProductTagService at index [1] is available in the ProductModule context.Potential solutions:- Is ProductModule a valid NestJS module?- If ProductTagService is a provider, is it part of the current ProductModule?- If ProductTagService is exported from a separate @Module, is that module imported within ProductModule? @Module({ imports: [ /* the Module containing ProductTagService */ ] }) 그래서 아래와 같이 ProductTagService, ProductCategoryService를 임의로 providers에 넣어주면 또 실행이 됩니다. 해당 모듈을 이미 임포트 해주었는데 왜 서비스를 따로 또 주입해주어야 할까요?@Module({ imports: [ TypeOrmModule.forFeature([Product, ProductTag, ProductCategory]), UserModule, ProductTagModule, ProductCategoryModule, ], providers: [ ProductResolver, ProductService, ProductTagService, ProductCategoryService, ], }) export class ProductModule {} 아래는 ProductTagModule과 ProductCategoryModule 코드입니다.@Module({ imports: [TypeOrmModule.forFeature([ProductTag])], providers: [ProductTagResolver, ProductTagService], }) export class ProductTagModule {} @Module({ imports: [TypeOrmModule.forFeature([ProductCategory])], providers: [ProductsCategoriesResolver, ProductCategoryService], }) export class ProductCategoryModule {}
-
미해결실리콘밸리 엔지니어가 가르치는 파이썬 장고 웹프로그래밍
database is locked.
sqliteBrowser 사용하는 수업에서 db.sqlite3를 열려고 하니, database is locked 라는 메시지가 뜹니다.그래서 ChatGPT나 Bard... Googling을 이용해봤지만, 저에게 해당될만한 내용이 없네요. 혹시 몰라 재부팅도 해봤습니다. 이거 DB부분만 지웠다가 다시 까는 방법이 있을까요?(makemigrations, migrate 부분)
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
15-02 API-GateWay 2
안녕하세요 수업을 잘 따라가고 있던 중 오류가 발생하였습니다... docker을 작동 하였고 아래와 같이 나와 도커를 확인 하였습니다.gatway제외한 나머지는 작동이 되는 걸 확인 하였고 gateway만 따로 작동을 하자 아래와 같이 에러가 발생하였습니다... 버전문제 때문에 그런건가요...??
-
미해결스프링 기반 REST API 개발
연동 DB문의
안녕하세요. 디비는 oracle 이나 mysql사용하여도 되나여? 혹시 postgresql 쓰는 이유가 있을까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
안녕하세요 버전1과 버전2의 차이에서
cs적인 부분이 더 강화되고 장점이 더 많아 졌다는 것을 알게되었는데,혹시 ver1부분과 ver2부분에서 elk스택에 대해서는 없는거 같은데 빠졌나요?
-
미해결[개정판 2023-11-27] Spring Boot 3.x 를 이용한 RESTful Web Services 개발
테이블 찾을 수 없음
참고로 user테이블이 이미 다른 database에서 사용중인것 같아서 user_table로 이름 지정했습니다. 테이블은 잘 만들어졌습니다.그런데data.sql에 해당 Unable to resolve table 'user_table' 문구를 가진 빨간 전구 user_table에 빨간 불이 들어옵니다.insert into user_table values (1, sysdate(), 'User1', 'test1111', '701010-1111111'); insert into user_table values (2, sysdate(), 'User2', 'test2222', '801010-1111111'); insert into user_table values (3, sysdate(), 'User3', 'test3333', '901010-1111111'); @Entity @Table(name = "user_table") public class User { @Id @GeneratedValue private Integer id; @Size(min = 2, message = "Name은 2글자 이상 입력해 주세요!") @ApiModelProperty(notes = "사용자 이름을 입력해 주세요.") private String name; @Past @ApiModelProperty(notes = "사용자 등록일을 입력해 주세요.") private Date joinDate; @ApiModelProperty(notes = "사용자 패스워드를 입력해 주세요.") private String password; @ApiModelProperty(notes = "사용자 주민번호를 입력해 주세요.") private String ssn; }spring: messages: basename: messages mvc: pathmatch: matching-strategy: ant_path_matcher datasource: url: jdbc:h2:mem:testdb;DATABASE_TO_UPPER=false jpa: show-sql: true hibernate: ddl-auto: create-drop h2: console: enabled: true path: "/h2-console".yml 파일에도 대소문자 무시도 추가해 보았지만 여전히 실행시 이런 에러가 발생하고요Caused by: org.springframework.jdbc.datasource.init.ScriptStatementFailedException: Failed to execute SQL script statement #1 of URL [file:/D:/intelliJavaPractice/restful-web-service/target/classes/data.sql]: insert into user_table values (1, sysdate(), 'User1', 'test1111', '701010-1111111'); nested exception is org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "user_table" not found (this database is empty); SQL statement:Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "user_table" not found (this database is empty); SQL statement:어떻게 해야 해결이 될까요. 도움주시면 정말 감사하겠습니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
수업과는 상관없지만 개발 순서와 완성도에 대해 질문드립니다!
안녕하세요!저는 프론트수업과 백엔드 수업을 듣고 하나의 웹을 혼자서 만들어보려고 하는데요.프론트부분과 백엔드 부분 중 어느 부분을 먼저 만들어야하는지 궁금합니다.그리고 백엔드 개발자를 준비한다면 프론트 부분의 완성도가 어느정도여야 하는지도 궁금합니다.( 포트폴리오 제출시 어필하기 위해서 )질문이 많이 모호해서 답변해주시기 어려울 것 같다는 생각이 드는데요, 혼자서 포트폴리오를 위해 웹을 제작하는 경우 어느정도까지 완성해야하는지가 궁금합니다.
-
미해결Django REST Framework 핵심사항
CSRF Token에 대한 질문입니다.
안녕하세요. 강의는 잘 들었습니다.강의와 관련이 없지만 해답을 찾지 못해 이렇게 남깁니다.. 다름이 아니라 제가 jwt token을 사용하여 프로젝트를 구현을 했습니다. 제가 알고 있는 것은 jwt token을 사용하게 되면 csrf token이 필요없기 때문에 발급하면 안되는 것으로 알고 있습니다. 그래서 X-CSRFToken을 발급하지 못하게 하고 싶은데 검색해도 찾지 못했습니다. 일단 제가 해본 것으로는 settings.py -> 'django.middleware.csrf.CsrfViewMiddleware' 을 주석처리.dj-rest-auth -> REST_AUTH 설정.이 있습니다. 토큰에 대해 잘못알고 있거나 어딜 수정하면 될지 피드백을 주시면 감사하겠습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part6: 웹 서버
SendPostRequest 에서 POST 중복된 값이 추가되는 것을 방지하려면 어떻게 하면 될까요?
SendPostRequest 를할 때 중복된 값이 추가되는데 id가 중복되지 않게 추가하려면 어떻게 하면 될까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
코드 오류 (06-03)
06-03 클래스 전략 패턴수업에서 선생님과 코드를 똑같이 입력했는데 오류(공중 몬스터 not defined)가 납니다. 어떤 부분이 문제일까요? class 공중부품 { run = () => { console.log("날아서 도망가자!!"); } } class 지상부품 { run = () => { console.log("뛰어서 도망가자!!"); } } class Monster { power = 10; 부품; constructor(qqq){ this.부품 = qqq; } attack = () => { console.log("공격하자!!"); console.log("내 공격력은" + this.power + "야!!!"); }; run = () => { this.부품.run();class 공중부품 { run = () => { console.log("날아서 도망가자!!"); } } class 지상부품 { run = () => { console.log("뛰어서 도망가자!!"); } } class Monster { power = 10; 부품; constructor(qqq){ this.부품 = qqq; } attack = () => { console.log("공격하자!!"); console.log("내 공격력은" + this.power + "야!! }; } const mymonster1 = new Monster(new 공중부품()); mymonster1.attack(); mymonster1.run(); const mymonster2 = new Monster(new 지상부품()); mymonster2.attack(); mymonster2.run();
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
date를 인식 못하는 문제
엔티티@Entity() @ObjectType() export class Reservation { @PrimaryGeneratedColumn('uuid') @Field(() => String) reservationId: string; @Column({ nullable: false }) @Field(() => Date) startDate: Date; @Column({ nullable: false }) @Field(() => Date) endDate: Date; @Column({ nullable: false }) @Field(() => Int) usersNumber: number; @Column({ nullable: false }) @Field(() => Int) lengthOfStay: number; @Column({ nullable: false }) @Field(() => Int) price: number; @ManyToOne(() => Member) @JoinColumn({ name: 'memberId' }) @Field(() => Member) member: Member; @ManyToOne(() => Campground) @JoinColumn({ name: 'campgroundId' }) @Field(() => Campground) campground: Campground; @ManyToOne(() => Tent) @JoinColumn({ name: 'tentId' }) @Field(() => Tent) tent: Tent; @DeleteDateColumn() deletedAt: Date; } 데이터 생성 DTO@InputType() export class CreateReservationInput extends OmitType( Reservation, ['reservationId', 'member', 'campground', 'tent'], InputType, ) { @Field(() => String) memberId: string; @Field(() => String) campgroundId: string; @Field(() => String) tentId: string; } 위 코드에 graphQL 요청시 에러가 발생합니다.mutation { createReservation ( createReservationInput: { startDate: "2023-01-01" endDate: "2023-06-06" usersNumber: 5 lengthOfStay: 10 price: 5 memberId: "lhw3542" campgroundId: "d35d3972-5c07-47d7-94a2-23c784f0a27e" tentId: "3ae33a7c-c898-4b66-b110-02b4f8c96398" } ) { reservationId startDate endDate usersNumber lengthOfStay price member { memberId } campground { campgroundId } tent { tentId } } } Field 'startDate' doesn't have a default value날짜 형식을 읽지 못하는 것 같은데 무엇이 잘못된 걸까요?아래와 같이 DTO에 직접 써줘도 인식을 못하고 있습니다. @Field(() => Date) startDate: Date; @Field(() => Date) endDate: Date;
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
join한 테이블 조회시 컬럼이 겹치는 문제
아래와 같은 코드에서 memberID를 조건으로 데이터를 조회하면 join된 campground와 member 각각에 member 컬럼이 다 있어 조건으로 넣어준 memberId를 어디서 찾아야 하는지 typeORM에서 인식하지 못하는 것 같습니다. 때문에 아래와 같은 에러가 나오는거 같습니다. 어떻게 해결해야 할까요?result = await this.dibsRepository.find({ where: { member: { memberId }, }, relations: ['campground', 'member'], });QueryFailedError: Column 'memberId' in where clause is ambiguous
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
08-05 강의에서 DB 접근이 안되는 현상이 발생합니다.
위와 같은 연결 오류가 발생하고이때 host는 'localhost' 로 입력을 한 상태입니다.app.module.ts 파일 내의 host를 127.0.0.1 로 변경하면 또 정상 작동 합니다.인터넷을 보니까socketPath: '/tmp/mysql.sock' 를 마지막에 넣어주면 또 정상 작동 하는 것 같습니다.도서관과 같은 특수한 네트워크 환경에서 진행해서 그런걸까요?https://cloer.tistory.com/56 자료를 참고했습니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
find가 빈 값을 반환하는 문제
안녕하세요~프로젝트 만들다보니 질문거리가 많아지네요.@Query(() => [Dibs]) fetchDibs( @Args('findDibsInput') findDibsInput: FindDibsInput, ): Promise<Dibs[]> { return this.dibsService.find(findDibsInput); }async find(findDibsInput: FindDibsInput): Promise<Dibs[]> { const { campgroundId, memberId } = findDibsInput; const result = await this.dibsRepository.find({ where: { campground: { campgroundId }, member: { memberId }, }, }); return result; }위 코드에 아래와 같은 graphQL 요청을 하면 아무런 값도 돌아오지 않습니다.query { fetchDibs( findDibsInput: { campgroundId: "845b4bac-e0d9-4d1e-a897-9859275e9948" memberId: "lhw3542" } ) { campground{ campgroundId campName } member { memberId } } }{ "data": { "fetchDibs": [] } }조건식 인식 자체가 제대로 되지 않고 있는거 같은데 또 오류는 안나오네요.어떤 것이 문제일까요?