Node.js 5

gcloud auth print-access-token 저장을 했는데 UTF-16 으로 저장되었다. / UTF16 문자열 읽기 / node.js

황당한 오류에 빠져서 2시간을 날렸습니다.gcloud auth print-access-token > token이런식으로 구글 클라우드 토큰은 token 이라는 파일로 저장하려고 했습니다.얼핏 포면 문제 없어 보입니다. 그런데 나중에 알고 보니하단에 UTF-16 으로 되어있습니다.console.log 로 찍어보면 앞글자 두글자가 뭔가 생겨있고 글자는 보입니다.그런데 이걸 json 으로 변환하면 보이지 않던 글자가 들어가게굅니다.UTF-16 은 2바이트에 한글자기 때문에 전통적인 방식으로 읽으면 글자 사이에 0 이 들어가 있는거랑 같습니다.이걸 json 은 데이터 유실이 없어야해서 전부 표기해버린 것이죠방법은 간단합니다.const token_bin = fs.readFileSync("token", "utf16..

node.js 와 cafe24 smtp 활용해서 자동 메일 보내기 / nodemailer 활용

본문:https://velog.io/@thisisone/cafe24-smtp-node.js-nodemailer-%EB%A1%9C-%EB%A9%94%EC%9D%BC-%EB%B3%B4%EB%82%B4%EA%B8%B0 node.js 와 cafe24 smtp 활용해서 자동 메일 보내기 / nodemailer 활용지난번에 안되서 cnode.js 로 성공했습니다.c다행cafe24 는 낮은 보안 이라 옵션을 좀 넣어야합니다.typescript 로 작업했습니다.js 이용자는 알아서 잘 ...계정엔 아이디@주소 형식의 풀네임이 들어가야velog.io  velog 로 옮겨서 거기 링크 남깁니다.velog 는 검색이 잘안디ㅗ고티스토리는 복붙이 잘안되고 검색은되고어질어질합니다.

node.js module (mjs 파일) 에서 json 파일 require 하는 방법

module 은 require 대신 import ~ from 을 쓰는 형식이구요 이 형식에서는 require 가 없어서 json 파일을 가져올 수 가 없군요. 이럴때에는 이런 방법이 있습니다. import { createRequire } from "module"; const require = createRequire(import.meta.url); const config = require("./config.json"); require 함수를 import 하는 방법입니다. ㄷㄷㄷ 대신 이 require 는 소스는 가져올 수 없습니다. const abc = require("./abc.js"); 이런거 말이죠 import ~~ from 쓰면되니 굳이 이럴필요는 없겠지만요 json 읽을때만 사용하세요

node.js cors csurf 사용 특징 메모

서버 비용이나 줄일까해서 github page 를 cdn 처럼 사용하고 node.js 서버 하나를 빌려서 api 서버로 사용하려고 했는데 이렇게 하면 CSRF 문제가 나온다고 한다. (크롬 콘솔로그에서 뜸) csrf 문제는 cross site request forgery 라고 주소가 다른 사이트두개를 이용하면 위험한 정보가 빠져나갈 수 있다는 문제가 생기는데 이걸 막으려고 처음에 csurf 를 이용하려는데 셋팅도 복잡하고 api 통신 전에 form 페이지를 먼저 호출해서 csrf 토큰을 받아야하는데 매우 번거롭습니다. (두번통신해야한다) 그래서 cors 를 쓰려는데 이것도 제한 사항이 있다. api 서버 주소가 http://localhost 고 정적페이지 주소가 api 서버 주소랑 같을때랑 다를때가 상황..