TIL

Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $

haedal-uni 2022. 12. 29. 01:22
728x90

고객센터 상담사 연결 채팅의 내용을 파일에 저장을 하기 위해 코드를 작성했는데 

Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $ 에러가 떴다.

 

json 형식이 아닌 String 형식으로 작성되어서 생긴 오류인데

대부분 replace를 이용해서 json 형식으로 바꿔주는 방식을 사용하고 있었다.

 

나는 프론트에서 메세지를 보낼 때 실행되는 sendMsg() 함수를 수정해서 파일을 작성할 수 있었다.

 

기존 코드

function sendMsg() {
   let content = document.querySelector('.chat-msg').value;
   socket.send(content)
   $(".chat-msg").val('')
}

 

 

변경 코드

function sendMsg() {
   let content = document.querySelector('.chat-msg').value;
   let data = {
      "id" : nickname,
      "state" : 0,
      "value" : content

   }
   let msg = JSON.stringify(data);
   socket.send(msg)
   $(".chat-msg").val('')
}

 

위와 같이 변경을 했더니 메모장에 저장이 잘 되는 것을 확인했다.

 

728x90

'TIL' 카테고리의 다른 글

security refactoring 코드 정리  (0) 2023.01.03
현 프로젝트 진행상황  (0) 2023.01.01
채팅 재연결  (0) 2022.12.28
프로젝트 - 연관관계 매핑 끝  (0) 2022.12.20
이 글도 공감해주세요 refactoring  (0) 2022.12.13