events.js:291 throw er; // Unhandled 'error' event ^ Error: listen EADDRINUSE: address already in use :::5000 at Server.setupListenHandle [as _listen2] (net.js:1317:16) at listenInCluster (net.js:1365:12) at Server.listen (net.js:1451:7) at Function.listen (C:\Users\ivy\bolier-plate\node_modules\express\lib\application.js:618:24) at Object.<anonymous> (C:\Users\ivy\bolier-plate\index.js:29:5) at Module._compile (internal/modules/cjs/loader.js:1085:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10) at Module.load (internal/modules/cjs/loader.js:950:32) at Function.Module._load (internal/modules/cjs/loader.js:791:14) at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) at internal/main/run_main_module.js:17:47 Emitted 'error' event on Server instance at: at emitErrorNT (net.js:1344:8) at processTicksAndRejections (internal/process/task_queues.js:80:21) { code: 'EADDRINUSE', errno: -4091, syscall: 'listen', address: '::', port: 5000 } npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! bolier-plate@1.0.0 start: `node index.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the bolier-plate@1.0.0 start script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\ivy\AppData\Roaming\npm-cache\_logs\2020-10-04T08_54_51_132Z-debug.log 처음에 실행할때는 잘 되는데 다시 실행하려고하면 계속해서 똑같은 오류가 나요 해결하려고 별짓을 다해봤는데 안되네요 왜 그런걸까요??
안녕하세요. BasicAuthenticationFilter 설명에 오류가 있는것 같아 질문 남깁니다. 확인 부탁드려요. BasicAuthenticationFilter.doFilterInternal 메소드 안에 this.rememberMeServices.loginSuccess(request, response, authResult);가 호출되는 부분이 있는데 여기에서 쿠기가 발급되는 것 같습니다. 그리고 postman을 이용해서 basic authentication을 실행한 결과 SecurityContextPersistenceFilter finally 스코프에서 session에 authentication 정보 또한 넣어 줍니다. 마지막으로 postman에서 basic authentication 후 발급 받은 쿠키만 있다면 이후 다음 요청에 authorization basic 헤더 필드가 없어도 인증된 결과를 확인할 수 있는데요. 제 생각에는 statefull과 stateless의 차이는 인증 방법(basic, form)이 아니라 http client의 차이인 것 같아요. 확인 부탁 드립니다. 감사합니다.
중급반 가르쳐주시느라 고생 많으셨습니다ㅜ 수업 때 풀었던 문제들덕에 도움 많이 받았습니다 강의를 다 듣고 추가적으로 다른 문제들도 풀면서 익혀보고 싶은데 문제가 너무 많다보니 뭐가 좋은지 잘 모르겠네요.. 혹시 group by, case, join 등을 활용한 문제들을 더 뽑아주실수있나요?? 더 풀어보고싶네요
제로초님 안녕하세요 🙇‍♂️ 😄 nginx 설정과 관련된 질문드립니다. 일전에 하나의 EC2에 프론트와 백엔드를 배포 하기 위해선 어떤 주의사항을 주실 수 있는지 여쭈었습니다. 😸 제로초님께서 " 각각의 주소와 포트를 어떻게 하실지 정하셨나요? 한 인스턴스에서 두 개의 서버를 돌리는 경우 nginx를 도입하시는 게 좋습니다." 와 같이 답변을 주셨습니다. 👨‍🏫 그래서 제로초님 영상과 강의를 보면서 nginx를 통해 도메인 주소로 들어오는 요청 가령, 'https://ham.com'을 'http://127.0.0.1:3080' 으로 리버시 프록시하는 작업을 성공했습니다. 덕분에 도메인 주소로 접속할 경우 화면이 정상적으로 출력되는 부분까지는 완성을 했습니다. 그런데 한 단계 더 나아가고자 하니 약간의 어려움이 생겼습니다. 😂 😂 프론트와 백엔드는 같은 인스턴스 안에 있으니 axios에서 'http://127.0.0.1:3000(백엔드 주소)' 로 바로 요청을 보내면 되지 않을까 생각하여 특별한 설정없이, local 환경에서 작업한대로 진행했는데, cors 에러 가 발생했습니다. 🙄 그래서 강의 내용을 다시 돌아보니 6-9 도메인 연결하기 강의 👨‍🏫 에서 " 반드시 도메인을 가지고 있어야지만 요청이 전송이 된다 "고 말씀해주신 부분을 확인했습니다. 그래서 이 부분과 관련해 몇가지 질문드립니다. 🙋‍♂️ 1. 그렇다면 백엔드 서버로 요청을 보내기 위한 프론트엔드 axios baseURL 설정 부분에도 백엔드의 IP 주소가 아니라 도메인 주소 가 자리해야 하는 것인지 궁금합니다. 2. 혹시 지금 이 상황을 해결하려면 nginx에서 프론트엔드와 백엔드 양쪽으로 리버스 프록시를 해야 하는 걸까요? 3. 제가 막히고 있는 지점을 설명드리고 배움을 얻고자 하였는데, 혹시 제가 놓치고 있는 설정이나 부분이 있다면 혹시 말씀을 부탁드릴 수 있을까요? 감사합니다. 제로초님 🙇‍♂️
안녕하세요, 우선 좋은 강의 만들어주셔서 감사합니다. 지난번 강의 때 만든 validateDuplicateMember 에서 중복된 이름을 가진 회원이면 IllegalStateException 에러를 던지도록 되어있는데, 이 부분에서 중복된 회원임을 알리고 다시 폼에서 요청받을 수 있도록 하려면 어떻게 해야하는지 궁금합니다. 현재는 whitelabel Error Page가 나오고, 로그에 "이미 존재하는 회원입니다."라는 메시지가 뜨더라구요..!
성능 문제로 템플릿 엔진보다는 웹 프레임워크 vue.js react.js angular.js를 쓴다고 들었습니다. 여기 강의에서 thymeleaf 템플릿 엔진을 사용했는데, spring에서 템플릿 엔진을 꼭 써야하는지 아니면 간단하게 예제로써만 사용하고 나중에는 react.js vue.js angular.js같은 웹 프레임워크를 사용하는 지 궁금합니다.
아래 많은 분들이 질문 하셨던 그 내용인데요. "상위 컴포넌트에서 선언한 data는 하위 컴포넌트에서 변경하지 말아야한다"라는 의미는 알거같습니당 그럼 todoItem.completed = !todoItem.completed라는 소스에서 todoItem은 TodoList.vue에서 올려 보내준거라서 App.vue파일에서 수정하면 안좋다는 의미인가요? 이해가 잘 안됩니다..
app.use(express.json()); app.use(express.urlencoded({extended: true})) 여기서 첫번째 express.json은 axios 요청이 올때 axios 두번째 인자의 데이터를 req.body에 넣는역할이고 두번째 express.urlencoded({extended:true})는 프론트에서 form을 통해 데이터가 날아오면 그 데이터들을 req.body에 넣는게 맞을까요 ? 그리고 extended:true라는 것은 어떤 옵션인가요 ?
이렇게 작성되면 강의목록이 추가된다면 그때그때 수정이 필요할 것 같은데.. 혹시 Firestore에서 받아온 데이터를 for문으로 돌리는 방법이 있을까요..? 아무리 찾아봐도 없어서 이것저것 해보다가 documentSnapshot.data!!.iterator()해서 해보긴 했습니다.. 과연 이렇게 하는게 맞는건지 잘 모르겠네요..
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요~ <크롤링과 엑셀 파일까지 한번에 프로그램 만들기> 강의 수강 중 하이퍼링크 관련 질문이 있습니다. 엑셀 파일을 생성하는 함수를 정의하여 코드를 작성해보았는데, 하이퍼링크 생성 코드 작성 시, 데이터가 없는 엑셀 파일이 생성되었습니다. (아래 코드 참조) 그래서 하이퍼링크 코드가 제가 정의한 함수가 아닌, 크롤링 코드 내 (for 문) 에 있어야 할 것 같다고 생각했는데.. 그러면 excel_sheet 가 정의되지 않았다는 에러가 납니다. (아래 이미지 참조)하이퍼링크 생성 코드는 어디에 작성되어야 할까요? # 엑셀 파일 생성 함수 정의 import openpyxl def write_excel_template(filename, sheetname, listdata): excel_file = openpyxl.Workbook() excel_sheet = excel_file.active excel_sheet.column_dimensions["B"].width = 60 excel_sheet.column_dimensions["C"].width = 70 # (다음 코드를 추가하였습니다) 하이퍼링크 생성 코드 excel_sheet.cell(row=index+1, column=3).hyperlink = title['href'] excel_sheet.title = sheetname for item in listdata: excel_sheet.append(item) excel_file.save(filename) excel_file.close() # 크롤링 코드 import requests from bs4 import BeautifulSoup res = requests.get("http://corners.gmarket.co.kr/Bestsellers?viewType=G&groupCode=G06") soup = BeautifulSoup(res.content, "html.parser") product_lists = list() bestlists = soup.select("div.best-list") bestitems = bestlists[1] products = bestitems.select("ul > li") for index, product in enumerate (products): title = product.select_one("a.itemname") price = product.select_one("div.s-price > strong") res_2 = requests.get(title['href']) soup_2 = BeautifulSoup(res_2.content, "html.parser") provider = soup_2.select_one("div.item-topinfowrap > div.item-topinfo > div.item-topinfo_headline > p > a > strong") product_info = [index+1, title.get_text(),title['href'], price.get_text(), provider.get_text()] product_lists.append (product_info) # 함수 호출 write_excel_template("report.xlsx","베스트상품", product_lists)
good_color<-color.gradient(c(0.3176471,0.2392157,0.3176471,0.925),c(0.7098039,0.6588235,0.2392157,0.15), c(0.2392157,0.7098039,0.7098039,0.28),nslices=length(freq)) 강의진행중에 시각화에서 색깔지정해주는 r 코드가 있는데요 이거 실행하면 함수 "color.gradient"를 찾을 수 없습니다. 라고 에러가 나는데 이건 어떻게 해결해야할까요? 뒤에서도 color.gradient 또 쓰는데 이게 해결이 안되니까 뒤의 코드들도 꼬이는거같습니다.