POST /api/user/ 500 31.544 ms - 3243 Error: WHERE parameter "userId" has invalid "undefined" value 500에러가 뜨면서 값이 데이터베이스로 전달이 안되요 front에서는 saga에서 post요청을 보낼때 값이 담겨있는데 back에 도착하면 값이 없는건지.. cors도 넣고 app . use ( express . json ()); app . use ( express . urlencoded ({ extended : true } 바디 파싱도 했는데 왜 값이 없다고 하는걸까요..
json.parse => javascript 객체 형태로 만들어주는 것으로 이해했고, json.stringify => 객체 형태를 문자열로 만든것으로 이해했습니다. 하지만, 언제 쓰이는지 정확하게 이해하지 못하고 헷갈려서 질문을 남깁니다. 잘못 이해하고 있는 부분 짚어주시면 진심으로 감사드리겠습니다. ******** ex) 프런트에서 <"zero kim" 입력> , post 로 request 을 요청할 때, // (1) 서버는 프런트에서 입력 받은 "zero kim"을 가지고 와서 DB에 담아줘야 하는 것으로 이해했고, DB에서 값을 담아주는 과정에서, 프런트에서 직접 가지고온 "zero kim"이 문자열? 형태를 나타내고 있으므로 서버에서 사용할 수 있도록 만들어주기 위해 json.parse했고, // (2) 이를 다시 프런트에 뿌려주기 위하여 "zero kim"을 DB에 담고난 후 json.stringfy 문자열로 다시 만들어서 프런트에 뿌려주는건가요? // (1) (post & put) request는 해당 값을 DB에 넣고 다시 프런트에서 보여달라고 request를 하는건가요? // (2) 브라우저에선 문자열로 stringify를 해줘야만 작동하나요? 서버에선 객체로 parsing을 따로 해줘야만 하는건요? 사용자가 보고 있는 브라우저가 문자이기 때문에 문자열로 파싱해주는건가요? 며칠동안 생각을 해봤는데 헷갈리네요 ㅠㅠ
# 위에 그린 그래프를 지역별로 나눠 봅니다. ( ggplot ( pre_sale ) + aes ( x = '연도' , y = '평당분양가격' , fill = '규모구분' ) + geom_bar ( stat = 'identity' , position = 'dodge' ) + facet_wrap ( '지역명' ) + theme ( text = element_text ( family = 'NanumBarunGothic' ), axis_text_x = element_text ( rotation = 70 ), figure_size = ( 12 , 12 )) ) 위의 코드 결과 그래프에 대해서 총 17개의 지역별 그래프마다 각각 X축 라벨이 나타나게 하는 방법이 없을까요?
안녕하세요 제로초님 이번에도 또 에러때문에 이렇게 질문을 드립니다...죄송.. 현재 6-6 댓글 작성,로딩 강의를 진행했는데요, 게시물의 댓글버튼을 누르면 TypeError: mainPosts is undefined 라는 에러창이 뜹니다. reducer 의 mainPosts에 이상한 값이 들어갔다는 소리같은데.. 일단은 제로초님의 코드와 비교도 해봤구요 redux devtool을 확인해보면 LOAD_COMMENTS_SUCCESS도 확인이 됩니다. 혹시나해서 PostCard.js 에서 const onToggleComment = useCallback (() => { setCommentFormOpened ( prev => ! prev ); if ( ! commentFormOpened ) { dispatch ({ type: LOAD_COMMENTS_REQUEST , data: post . id , }); } }, []); if ( ! commentFormOpened ) { dispatch ({ type: LOAD_COMMENTS_REQUEST , data: post . id , }); } 이 부분을 지우고 다시 진행을 해보면 댓글창은 뜨고, 댓글 추가 시 redux devtool은 ADD_COMMENT_FAILURE를 출력, saga post.js 에서 addComment 에 추가한 consol.error(e); 를 확인해보면 TypeError: "Invalid attempt to spread non-iterable instance" _nonIterableSpread nonIterableSpread.js : 2 _toConsumableArray toConsumableArray.js : 5 reducer post.js : 106 combination Redux y (index) : 1 h (index) : 1 b (index) : 1 dispatch Redux e (index) : 1 Redux 12 라는 콘솔에러를 출력합니다. 저 에러는 const Comments = [ ... post . Comments , action . data . comment ]; 이 부분을 가르키고 있긴한데... 어떤 부분을 다시 확인해봐야 할까요?? https://github.com/ljg0230/nodebird_ljg/tree/hotfix_1
안녕하세요. 좋은 강의 감사드립니다. 강의 커리큘럼에는 없는 내용 질문이 실례인줄은 알지만 하도 궁금하여 질문드립니다. ㅜㅜ 1. USB를 통한 시리얼 통신을 하고싶은데, 이것도 소켓통신과 같이 쓰레드를 생성하여 돌려야 겠하죠? 2. USB 시리얼 통신같은 경우 테스트 할때 일반적으로 어떻게 하나요? 앱을 단말기에 설치후 컴퓨터에서 제거하여 원하는 시리얼 장치를 단말기에 재연결후 앱을 동작시켜보는것 이외에는 방법이 없나요? (usb 허브를 단말기에 연결하여 컴퓨터와 시리얼 장치를 동시에 연결할 수는 없나요?) 감사합니다. 좋은하루되세요~
오늘 github 접근 권한 받은 antiquehj(github id)입니다. 접근권한 받았다고 하는데 어디에서 어떻게 시작해야하는 건지 잘 모르겠습니다. 이에 대한 안내는 없는 것 같네요 ㅠ 제가 너무 초보자라 그런 것 같습니다. 작가님 책과 초급강의는 다 들어서 따라왔는데 여기서 부터 벌써 막히네요.초심자를 위한 Github 협업 튜토리얼(클릭)는 일단 다 읽었는데 해답을 찾을 수 없었습니다. github에서 Joshua1988/vue-intermediate 로 검색해봐도 검색이 안되고, github 어느 페이지에서 찾아야할지, 어떻게 시작해야할지 모르겠습니다. 질문을 검색해봐도 이런 초보적인 질문은 없네요 ㅠㅠ 번거로우시겠지만 답변 부탁드립니다. ㅠㅠ
안녕하세요. 강의에서 회원 등록 시 회원 이름이 없으면 다시 member/createMemberForm으로 돌아가 에러 메시지를 띄우신거 처럼 회원 이름이 중복될 때도 FieldError를 추가하여 똑같이 적용하려고 했는데 중복된 회원을 memberService.join(member)할때 throw한 Exception을 Controller에서 감지하여 BindingResult에 에러로 추가하는 방법이 있나요? 현재는 이렇게 Controller에서 직접 검증하여 fieldError를 추가하였습니다.
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
'파이썬입문과 크롤링기초 부트캠프 [쉽게! 하지만, 견고한 자료로!] ' 를 학습하고 있는 직장인 입니다. 네이버 금융에서 '종합정보' 내용은 크롤링 하였습니다. (아래 첨부) 그런데 '종목분석' 의 Financial Summary 에서는 크롤링 되지 않아 메일 드립니다. 현상 : 제가 원하는 당기 순이익(지배) 내용이 나오지 않고 전혀 다른 내용이 나옵니다 바쁘시겠지만 답변 부탁드립니다. 혹시 시간이 되신다면 Sample로 financial summary의 '당기순이익(지배)' 를 크롤링하는 프로그램을 부탁드려도 될까요? 제가 크롤링한 결과는 전혀 다른 내용이 나와서 어디서 잘못되었는지 감을 못잡겠습니다. import requests import numpy as np import pandas as pd from bs4 import BeautifulSoup stock_num = ['095570'] #stock_num = ['095570','068400','006840','027410'] for i in stock_num: URL = "https://finance.naver.com/item/main.nhn?code=" + str(i) print(URL) stock_1 = requests.get(URL) html = stock_1.text soup = BeautifulSoup(html, 'html.parser') finance_html = soup.select('div.section.cop_analysis div.sub_section')[0] stock_name = soup.select('#middle > div.h_company > div.wrap_company > h2 > a')[0] name = stock_name.get_text() print(name) th_data = [item.get_text().strip() for item in finance_html.select('thead th')] annual_date = th_data[3:7] quarter_date = th_data[7:13] #print(annual_date,quarter_date ) finance_index = [item.get_text().strip() for item in finance_html.select('th.h_th2')][3:] #print(finance_index) finance_data = [item.get_text().strip() for item in finance_html.select('td')] #print (finance_data) import numpy as np finance_data = np.array(finance_data) finance_data.resize(len(finance_index), 10) #print (finance_data) finance_date = annual_date + quarter_date import pandas as pd finance = pd.DataFrame(data=finance_data[0:,0:], index=finance_index, columns=finance_date) annual_finance = finance.iloc[:, :4] #quarter_finance = finance.iloc[:, 4:] #print (annual_finance,quarter_finance ) print (annual_finance) financial Summary 의 '댱기순이익(지배)' 크롤링하는 예제를 만들어 주시면 유용할것 같습니다.
교수님 안녕하세요 일전에 유튜브에 언어 실력의 상/중/하 구분 관련하여 질문드렸었는데 기억하시는지 모르겠네요..ㅎㅎ 2.2 정수형 강의에 numeric_limits라는 함수가 소개 되었는데 처음보는 함수여서 정의부 파일을 찾아가 보니 climits을 include 하고 climits는 limits.h를 include 하더라구요 c언어로 입문해서 그런지 c++ 코딩 할 때도 필요 할 때 c에서 쓰던 header들을 쓰곤 하는데(math.h , limits.h , stdio.h 등) 각각 대체 헤더들이 있는걸로 알고 있는데(cmath, limits + climits, cstdio) c++ 코딩 할 때는 (대체 헤더가 맞는지 모르겠지만) .h 헤더를 지양하는게 나을 까요?
truffle migrate가 안됩니다...ㅠㅠ 말씀하신대로 networks에서 development 에 해당하는 주석을 지우고 truffle migrate 를 쳣는데 여전히 could not connect to your Ethereum client with... 가 나오네요 혹시 다른 해결방법이 있나요?