brunch

FE 에서 mjs 문제점

끝나지않는 지옥의 Javascript

by 제이니

mjs 파일은 modular javascript 의 약자로, import 로 외부 패키지를 관리하는 자바스크립트 파일 확장자이다. js 인 경우에는 이게 cjs (common javascript, require 로 패키지를 로드함) 인지 mjs 인지 모호하기 때문에 좀 명확하게 표시해주는 것이다.


다만, 아직 nginx 나 apache 웹 서버에서 mime type 에 지정이 안되어있는 경우가 있다. 이 경우 mjs 확장자에 대한 application/json 의 mime type 을 지정해주지 않으면, application/octet-stream 등의 기본 mime type 으로 파일을 읽거나 보내게 시도하게 되고 사용자의 브라우저에서는 octet-stream 으로 들어와 자바스크립트 모듈을 로드하지 못하는 경우가 생기게 된다.



이런 쓰잘데기 없는 컨벤션들이 자바스크립트에는 너무 파편화되어 많이 존재한다.

keyword
매거진의 이전글Celery 사용시 주의점