응용편에서 연습하다 궁금증을 해결하지 못해서 질문드립니다. Image를 로딩하는 도중 에러가 발생했을때 이렇게 외부로 에러를 표출해서 catch로 잡을 수 있는데, 이미지를 로딩하는 흐름이 멈춰버려서 나머지 이미지들까지 제대로 표시되지 않습니다. 그래서 이런식으로 onerror에서 직접 대체 이미지를 적용하고 외부에 에러를 표출할지 않게 작성했는데요, 대체 이미지로 적용되고 흐름도 멈추지 않아서 나머지 이미지들도 정상적으로 잘 표시됐습니다. 이런식으로 작성하는게 올바른 에러처리 방법인지 잘 모르겠습니다. 외부에 에러처리를 위임하고 싶은데 그러자니 스크립트가 멈춰서 나머지 이미지들도 표시되지 않습니다... catch에서 에러를 잡은 뒤 어떤식으로 처리할 수 있을까요?
C++말고 Java를 공부했을 때 문자(char)를 저장하여 int값을 반환할 때 아스키코드값이라고 대부분 보긴했는데, 정확히 말하면 파일 인코딩 형식의 10진수 값 이 나온다고 하는게 맞다고 들었습니다. 아스키 코드라고 말하는 이유가 127번째 문자까지는 대부분의 인코딩 형식들이 다 똑같기 때문에 라고 봤습니다. 따라서 해당 문자의 시스템 또는 운영체제, IDE의 인코딩 형식의 10진수로 저장된다고 이해하고 있는데, C++은 그런거 상관없이 "아스키코드"를 기반으로 수행이 되는건가요?? 교안 18p에 "문자열에서 + 하는 연산은 아스키코드를 기반으로 수행됩니다." 라고 적혀있길래 너무 궁금해서 문의남깁니다!!!
김영한님 안녕하세요. 강의 잘 듣고 있습니다. 강의자료에 오타가 있습니다. 지금 강의에 해당하는 10.스프링 트랜잭션 전파1-기본.pdf 에 있고 25페이지에 [참고] 란 첫번째 줄입니다. (소제목 "스프링 트랜잭션 전파7-REQUIRES_NEW" 바로 이전 [참고]란) 구체적인 내용을 적기는 조금 그래서, 확인하시고 수정하시면 될 것 같습니다. 다시 한번 좋은 강의 만들어주셔서 감사합니다.
안녕하세요 제로초님 노드 교과서 강의와 노드버드 강의 덕분에 노드에 대해 많이 배우고 있습니다. 다름이 아니라 팀 프로젝트 중 궁금한게 있어 질문드립니다. 원하는 구현 기능은 전체 게시글 목록에서 상세 게시글 목록으로 들어가면 로그인 한 사람 중 자신이 쓴 게시글 일 경우에만 프론트에서 수정, 삭제 버튼이 보이도록 구현하고 싶습니다. 그래서 프론트에서 요구 사항이 만약 자신이 쓴 게시글의 상세 페이지에 들어갔다면 응답값을 줄 때 isUser: true 이런식으로 표시를 해 달라고 요청이 왔습니다. (로그인 방식은 JWT를 썼습니다) 그래서 상세게시글 URL로 요청이 왔을 때 헤더에 토큰이 있는지 없는지를 확인해서 처리해주기 위해 아래와 같이 코드를 짰습니다. router . get ( ' /post/:id ' , async ( req , res , next ) => { if ( req . headers . authorization ) { authMiddleware ( req , res , next ) ; try { const post = await Post . findOne ( { where : { id : Number ( req . params . id ) }, include : [ { model : User , attributes : [ ' id ' , ' nickname ' ] , }, ] , } ) ; if ( res . locals . user === post . UserId ) { return res . status ( 200 ) . json ( { post , isUser : true } ) ; } else { return res . status ( 200 ) . json ( { post , isUser : false } ) ; } } catch ( error ) { console . error ( error ) ; next ( error ) ; } } else { try { const post = await Post . findOne ( { where : { id : Number ( req . params . id ) }, include : [ { model : User , attributes : [ ' id ' , ' nickname ' ] , }, ] , } ) ; res . status ( 201 ) . json ( post ) ; } catch ( error ) { console . error ( error ) ; next ( error ) ; } } } ) ; 근데 authmidleware 에서 토큰 값을 못 읽어 req.headers는 undefinded라는 오류가 납니다. 저런 방식으로 미들웨어를 확장하는건 아닌 거 같은데 어떤 방법이 있을지 조언 부탁드립니다. authmidleware 부분은 아래와 같이 짰습니다. const User = require ( ' ../models/user ' ) ; module.exports = ( req , res , next ) => { const { authorization } = req . headers ; const [ authType , authToken ] = ( authorization || '' ) . split ( ' ' ) ; if ( ! authToken || authType !== ' Bearer ' ) { res . status ( 401 ) . send ( { errorMessage : ' 로그인 후 이용 가능한 기능입니다. ' , } ) ; return ; } try { const { userId } = jwt . verify ( authToken , ' customized-secret-key ' ) ; User . findByPk ( userId ) . then ( ( user ) => { res . locals . user = user ; next () ; } ) ; } catch ( err ) { res . status ( 401 ) . send ( { errorMessage : ' 로그인 후 이용 가능한 기능입니다. ' , } ) ; } }; 위와 같은 방식이 아니더라도 로그인 했을 경우 자기 게시글인 경우 수정 삭제가 보이고 로그인 안하거나 로그인 했더라도 자기 게시글이 아닌경우 수정 삭제가 안보이도록 하려면 어떤 방식으로 하면 좋을까요? 소중한 시간 내어 읽어주셔서 감사드립니다.
while(_locked.compare_exchange_strong...) { //블라블라 } 부분에서 저 코드가 예시인건 알겠지만 현업에서는 while문 안에서 어떤 별도의 작업을 하게 하는 경우가 있나요? 있다면 보통 어떤 목적으로 사용하는 경우가 많나요?? 그리고 이건 약간 별도의 질문인데 이 강의로 서버파트를 공부할 때 처음부터 끝까지 한번 씩 쫙 들으면서 전반적인 흐름을 파악하고 다시 한번 하면서 깊게 들어가는 방법과 하나씩 하나씩 완벽하게 습득한 후에 다음 개념을 습득하는 방법중 더 추천하는 방법이 있으신가요?
22강을 들으면서 하고 있다가 에러났는데 다른걸 다 수정해봐도 이런 에러가 뜨는 이유는 무엇일까요ㅜㅜㅜ setupProxy코드도 업데이트 된 코드 썼고 package.json에 proxy URL 추가해보고 밑에 저랑 같은 에러 나신 분들 좀 계신 거 같아서 밑에 있는 해결방식 다 따라해봤는데도 여전히 이 에러가 나오네용,,,,,,,,
안녕하세요 개발 진행중 H2 버전이 높아 버전을 다운하려고 합니다. mv.db 파일을 삭제하고 1.4.199 버전을 실행하려했으나 File corrupted while reading record: null. Possible solution: use the recovery tool [90030-199] 90030/90030 라는 오류로 인하여 실행이 되지 않는데요 혹시 해결방법이 있을까요?
강좌 재미있게 듣고 있습니다. 강의를 듣던 중 질문이 생겨서 이렇게 질문글 남깁니다. mvc2강좌를 듣던중 HttpMessageConverter와 관련하여 학습하고, DTO를 활용해서 비지니스 로직 레이어까지 전달한다는 내용은 이해했습니다. 제가 한번 테스트 하던 중 아래와 같은 경우에는 어떻게 실무에서 해결하는지 궁금해서 질문남깁니다. <상황제시> * json 형식이 아래와 같이 2가지 케이스로 나뉜다 ```json { "id" : "hello-id" , "data" : "hello-data" } ``` ```json { "id" : "hello-id" , "data" : { "key" : "value" } } ``` 요약하자면 data에 대응하는 value가 string 또는 객체로 들어갈 수 있는 상황입니다. 이런 상황에서 ```java class Dto { @Data public class Dto { private String id ; private Object data ; } } ``` 와 같이 활용하면 잘 안 되더라구요.. HttpMessageNotReadableException 라는 예외가 발생하는 것을 확인했습니다. 동일한 url 에 GetMapping 에서 활용하고자 하는데, 이런 경우에는 현업에서 어떻게 활용하나요? DTO를 상속하는 형태로 추상클래스생성 및 확장하는 형태로 진행하나요? 궁금합니다!
해당 영상 강의 초반에 const [counter, setCounter] = React.useState(jsonLocalStorage.getItem('counter')) 위 코드를 수정하시면서 카운터의 useState( ) 초기값에 함수 형식으로 쓰면, App 이 렌더링 될 때마다 local storage 에 접근하는 걸 방지할 수 있다고 설명하신 걸로 이해했습니다. 왜 함수 형식 () => { return ... } 으로 useState 초기값에 코드를 쓰면 리액트가 반복실행을 안하는(?) 건지 궁금합니다! 감사합니다 :)