안녕하세요^^ 쿠키 와 세션에 관해서 질문이 있습니다. 1. 로그인 구현할때 express-session을 통해서 연습을 하고 있는데 서버가 세션을 보내고 브라우저는 쿠키를 받는다. 여기서 쿠키가 암호화가 되는이유가 express-session의 옵션값으로 secret값을 가지고 해싱을 한 후 브라우저에게 주기 때문에 쿠키값이 해싱이된다. 라고 이해를 하고 있습니다. 맞나연? 그리고 요청이 올때는 쿠키값을 해독한 다음 req.session에 들어오는 건가요?? 2. 그리고 로그인 요청이 올때 세션에 있는 유저 정보와 데이터베이스에 있는 유저랑 매칭 후 있으면 로그인을 시킨다. 여기서도 express-session으로 구현을 해보았는데 // 요청 온 아이디와 일치하는게 데이터베이스에 있다면 req.session.userId = 변수.id; 이부분에서 여러사용자가 로그인 요청이 올수도 있기때문에 req.session에userId 값들을 배열로 담는것이 맞나요? ex) req.session.userId = []; req.session.userId.push(변수.id); 제가 잘못생각한게 있으면 고쳐주시면 감사하겠뜹니다.
from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import accuracy_score import pandas as pd import warnings warnings.filterwarnings('ignore') # 결정 트리에서 사용한 get_human_dataset( )을 이용해 학습/테스트용 DataFrame 반환 X_train, X_test, y_train, y_test = get_human_dataset() get_human_dataset() # 랜덤 포레스트 학습 및 별도의 테스트 셋으로 예측 성능 평가 rf_clf = RandomForestClassifier(random_state=0) rf_clf.fit(X_train , y_train) pred = rf_clf.predict(X_test) accuracy = accuracy_score(y_test , pred) print('랜덤 포레스트 정확도: {0:.4f}'.format(accuracy)) 해당 코드 실행시 나오는 에러 구문입니다. 제가 타이핑 한 구문도 아니고 퍼펙트 가이드에 있는 주피터 노트북 구문 그대로 복사 붙여넣기를 했음에도 불구하고 에러가 나옵니다. 그 전에도 이런 상황과 비슷하게 퍼펙트 가이드 폴더에 있는 주피터 노트북으로 실행을 했음에도 불구하고 에러가 나오는 경우가 몇번 있었습니다.
제가 직접 주소창에 (서버포트:3090) localhost:3090/google을 치면 제대로 제 google-email을 가져오지만 saga를 통해서 (client포트: 9229) localhost:3090/google을 넣으면 cors policy가 뜹니다 saga에서 서버로 가는 요청은 제대로 가는데 resource 서버로 가는 요청이 cors에 막히는 것 같습니다. 제 생각에는 front server에서 직접 google server에 인증을 요청하는 게 방법일 수 있을거 같은데 맞나요? 지금 제 코드는 saga에서 요청을 보내면 backend에서 authenticate를 하고 있습니다. 그래서 redirect를 하면서 cors 에러가 생기는게 아닐까? 해서 그랬습니다. 소스코드는 githhub에 있습니다. https://github.com/JeongJin984/Kit-Books 밑은 에러 입니다.
수업 열심히 듣고 있습니다. 좋은 수업 감사합니다. 저는 연속적인 구구단 입력에 대한 코드를 다음과 같이 작성해보았습니다. ============================================= user_input = int(input("구구단 몇단을 작성할까요(1~9)? 종료하시려면 0을 입력해주세요. ")) while (user_input < 0 and user_input > 9): print("숫자를 잘못 입력하셨습니다. 다시 입력해주세요") user_input = int(input()) while(user_input != 0): print("구구단", user_input,"단을 작성합니다.") for i in range(1,10): result = user_input * i print(user_input, "X", i, "=", result) user_input = int(input("구구단 몇단을 작성할까요? ")) if(user_input == 0): break print("구구단 작성을 종료합니다.") ============================================= 개선점이나 잘못된 점을 알려주시면 감사하겠습니다.
this.lastScrollTop을 선언해줄때 계속 코드를 작성하던 이벤트 함수 안이나 init함수 안에서 선언해주는것이 아닌 생성자 함수를 만들때 넣어주시는데 꼭 그렇게 하는 이유가 있나요? 혹시 나중에 다른 추가적인 함수들에서 그 변수를 쓸 경우를 고려하셔서 그렇게 하시는 건가요?
안녕하세요. 좋은 강의를 제공해주신 덕분에 JPA를 열심히 공부하고 있습니다. JPA 사용 중에 궁금한 점이 있는데요 delete동작 방식을 보니, em.find로 entity를 조회 후에 em.remove순으로 query가 동작하고 있습니다. Mysql에서 null인 값을 조건절로 삭제해봐도 에러는 발생하지 않는데, JPA만의 특별한 이유가 있을까요? 두 번째로 궁금한 점도 있습니다ㅎㅎ JPA에서는 foreign key 제약조건을 위반하지 않기 위해서 모든 sql이 아래의 순서로 동작한다고 합니다. 1. Insert, in the order they were performed 2. Updates 3. Deletion of collection elements 4. Insertion of collection elements 5. Deletes, in the order they were performed 위의 조건으로 인해 하나의 transaction안에서 unique key걸린 값을 remove후 save하면 duplicate error가 발생하는데요. 혹시 이것도 JPA만의 특별한 이유가 있는지 너무너무 궁금합니다!
안녕하세여 john ahn 님 저 ㅈㅅ한데 처음부터 강의를 다시 듣는중인데 이부분에서 다시 에러가 나서여 저번에 알려주셨던것도 같은데 좀 되서 잊어버렸어요 ㅈㅅ 회원 가입한뒤에 몽고 디비에서 다음과 같이 확인이 되고 회원가입 두번째 시도에 에러가 발생해서여 왜 그런지 알려주시면 대단히 감사여 postman의 메세지는 result: { "success" : false , "err" : { "driver" : true , "name" : "MongoError" , "index" : 0 , "code" : 11000 , "keyPattern" : { "email" : 1 }, "keyValue" : { "email" : null } } } 몽고 디비의 저장 형식도 좀 이상하고 두번째 회원 가입이 실패하는것도 이해가 안가여 아이디를 바꿔서 회원 가입 해도 두번째부터 에러가 발생해여
안녕하세요. 강의 잘 보았습니다. 강의 도움 받아서 테스트 진행해보고 있는데요. 저장이 안되는 부분에 대해 문의 드려봅니다. Car, Camp 엔티티가 있고 Car 전체 데이터 읽어서 특정 필드의 값을 Camp 에서 찾아서 업데이트하는 로직입니다. if ( carRepository .count() > 0 ) { carRepository .findAll().stream().forEach(s -> { String campName = s.getCampEngName() ; Optional<Car> car = carRepository .findById(s.getId()) ; Camp camp = campRepository .findByEngName(campName) ; if (camp != null ) { car.ifPresent(m -> m.setNote( camp .getKorName())) ; } }) ; } 해당 부분 코드는 이렇게 했는데, 수행 후에 실제 Car 엔티티의 note 값이 변경이 안되어있습니다. 로그 찍어보면 campName 값은 일일이 잘 가져오고 있는데 setNote로 저장이 안됩니다. 트랜젝션 문제일까요? 강의를 제대로 소화를 못했는지 원인을 못찾겠네요. ㅠㅠ 도움 부탁드립니다. 아.. 저게 수행되는 곳이, 일반 컨트롤러 통해서 들어오는게 아니라 최초 실행시점입니다.(혹시 이게 문제일까요?) @PostConstruct public void initCarData() throws IOException { ... if (carRepository.count() > 0) { } ... } 이 부분입니다.
(에디터마다 상이하겠지만 서브라임 텍스트 기준) - , * , / 두개씩 수정하시는 부분 1. 첫번째 '-' 옆에 커서 넣고 2. ctrl 키 3. 두번째 '-' 옆에 커서 넣고 수정하시면 한번에 수정가능해요! 업무나 기타 프로그램 이용에 참고하세요~~~ -지나가던 웹디 + 초보 퍼블리셔-
scrapy shell로 해서 하나하나 response 결과를 확인할때는 잘 파싱되서 결과값이 나오는데, 전체 scrapy를 생성해서 crawl 돌리면 400 HTTP status code is not handled or not allowed 이 나는건 왜 때문인가요...?