[카테고리:] NodeJS

PM2 실행시 Permission denied, activate current user

PM2로 서버 및 각종 개발을 하던 중 어느날 갑자기Permission denied, activate current user라는 메시지를 보이며 실행이 되지 않는 경우가 발생했다.단순히 pm2 명령 입력은 되는데, 아래와 같이 목록이나 버전 정보를 조회를 하니 되지 않는다. PM2를 재설치를 해도 해결이 되지 않았다.PM2 경로에 권한을 바꿔주니 해결이 되었다. PM2 경로는 사용자에 맞게 수정을 해 주면 된다.

HTTP request EUC-KR 값 전달

HTTP request를 전달을 해야 하는데, 서버가 EUC-KR을 받아야 하는 경우가 있습니다.encodeURI나 encodeURIComponent를 할 경우 UTF-8인 상태에서 변환이 이뤄지게 됩니다.수신하는 쪽에서 UTF-8를 EUC-KR로 변환을 한다면은 문제가 없겠지만,EUC-KR로 보내야 한다면 iconv 라이브러리를 이용하여 전달을 하면 됩니다. 위와 같이 인코딩을 변경 후 buffer 저장된 값을 escape를 해 주면 됩니다. encoding 및 decoding시 값 확인은 아래 사이트에서 확인할 수.

TCP로 EUC-KR 문자열 전달

NodeJS로 개발을 진행 중 TCP 통신으로 다른 서버와 연결을 해야 하는 경우가 있습니다.그 서버 인코딩이 UTF-8이라면은 아무런 문제 없이 개발을 할 수 있겠지만,서버 인코딩이 EUC-KR일 경우 받는 쪽에서는 문자열이 깨져서 수신이 되게 됩니다. 보낼때 iconv 등을 통해서 인코딩을 EUC-KR로 변경해서 보내면 되겠지라고 생각 하지만,TCP write시 인코딩은 UTF-8과 binary만 지정이 가능합니다.역시나 받는쪽에서도 인코딩이 깨져서 수신이 됩니다..