오류
Node.js에서 실행되는 애플리케이션은 일반적으로 네 가지 범주의 오류를 경험합니다.
- <EvalError>, <SyntaxError>, <RangeError>, <ReferenceError>, <TypeError> 및 <URIError>와 같은 표준 JavaScript 오류.
- 존재하지 않는 파일을 열거나 닫힌 소켓을 통해 데이터를 보내려고 시도하는 것과 같은 기본 운영 체제 제약 조건으로 인해 발생하는 시스템 오류.
- 애플리케이션 코드로 인해 발생하는 사용자 지정 오류.
AssertionError
는 Node.js가 발생해서는 안 되는 예외적인 논리 위반을 감지할 때 발생할 수 있는 특수한 종류의 오류입니다. 이러한 오류는 일반적으로node:assert
모듈에서 발생합니다.
Node.js에서 발생하는 모든 JavaScript 및 시스템 오류는 표준 JavaScript <Error> 클래스에서 상속되거나 해당 클래스의 인스턴스이며 해당 클래스에서 사용할 수 있는 속성을 최소한 제공합니다.
오류 전파 및 인터셉트
Node.js는 애플리케이션이 실행되는 동안 발생하는 오류를 전파하고 처리하는 여러 메커니즘을 지원합니다. 이러한 오류가 보고되고 처리되는 방식은 Error
의 유형과 호출되는 API 스타일에 따라 완전히 달라집니다.
모든 JavaScript 오류는 표준 JavaScript throw
메커니즘을 사용하여 오류를 즉시 생성하고 발생시키는 예외로 처리됩니다. 이러한 오류는 JavaScript 언어에서 제공하는 try…catch
구성을 사용하여 처리됩니다.
// z가 정의되지 않았기 때문에 ReferenceError와 함께 발생합니다.
try {
const m = 1;
const n = m + z;
} catch (err) {
// 여기에서 오류를 처리합니다.
}
JavaScript throw
메커니즘을 사용하면 처리해야 하는 예외가 발생하거나 Node.js 프로세스가 즉시 종료됩니다.
몇 가지 예외를 제외하고 동기 API(<Promise>를 반환하거나 fs.readFileSync
와 같이 callback
함수를 허용하지 않는 모든 차단 메서드)는 throw
를 사용하여 오류를 보고합니다.
비동기 API 내에서 발생하는 오류는 여러 가지 방법으로 보고될 수 있습니다.
- 일부 비동기 메서드는 <Promise>를 반환합니다. 거부될 수 있다는 점을 항상 고려해야 합니다. 처리되지 않은 Promise 거부에 프로세스가 어떻게 반응하는지에 대한 자세한 내용은
--unhandled-rejections
플래그를 참조하십시오. callback
함수를 허용하는 대부분의 비동기 메서드는 해당 함수의 첫 번째 인수로 전달되는Error
객체를 허용합니다. 해당 첫 번째 인수가null
이 아니고Error
의 인스턴스인 경우 처리해야 하는 오류가 발생한 것입니다.- 비동기 메서드가
EventEmitter
인 객체에서 호출되면 오류가 해당 객체의'error'
이벤트로 라우팅될 수 있습니다. - Node.js API의 일반적인 비동기 메서드 중 일부는 여전히
throw
메커니즘을 사용하여try…catch
를 사용하여 처리해야 하는 예외를 발생시킬 수 있습니다. 이러한 메서드의 포괄적인 목록은 없습니다. 필요한 적절한 오류 처리 메커니즘을 확인하려면 각 메서드의 문서를 참조하십시오.
'error'
이벤트 메커니즘의 사용은 스트림 기반 및 이벤트 이미터 기반 API에 가장 일반적이며, 이러한 API는 시간 경과에 따른 일련의 비동기 작업(성공 또는 실패할 수 있는 단일 작업과 반대)을 나타냅니다.
모든 EventEmitter
객체의 경우 'error'
이벤트 처리기가 제공되지 않으면 오류가 발생하여 Node.js 프로세스가 처리되지 않은 예외를 보고하고 충돌합니다. 단, 'uncaughtException'
이벤트에 대한 처리기가 등록되었거나 더 이상 사용되지 않는 node:domain
모듈이 사용된 경우는 예외입니다.
const EventEmitter = require('node:events');
const ee = new EventEmitter();
setImmediate(() => {
// 'error' 이벤트 처리기가 추가되지 않았기 때문에 이 프로세스가 충돌합니다.
ee.emit('error', new Error('This will crash'));
});
이러한 방식으로 생성된 오류는 호출 코드가 이미 종료된 후에 발생하므로 try…catch
를 사용하여 가로챌 수 없습니다.
개발자는 각 메서드의 문서를 참조하여 해당 메서드에서 발생하는 오류가 정확히 어떻게 전파되는지 확인해야 합니다.
클래스: Error
일반적인 JavaScript <Error> 객체로, 오류가 발생한 특정 상황을 나타내지 않습니다. Error
객체는 Error
가 인스턴스화된 코드의 지점을 자세히 설명하는 "스택 추적"을 캡처하고 오류에 대한 텍스트 설명을 제공할 수 있습니다.
모든 시스템 및 JavaScript 오류를 포함하여 Node.js에서 생성된 모든 오류는 Error
클래스의 인스턴스이거나 상속됩니다.
new Error(message[, options])
새로운 Error
객체를 생성하고 error.message
속성을 제공된 텍스트 메시지로 설정합니다. 객체가 message
로 전달되면 텍스트 메시지는 String(message)
를 호출하여 생성됩니다. cause
옵션이 제공되면 error.cause
속성에 할당됩니다. error.stack
속성은 new Error()
가 호출된 코드의 지점을 나타냅니다. 스택 추적은 V8의 스택 추적 API에 따라 다릅니다. 스택 추적은 (a) 동기 코드 실행의 시작 또는 (b) Error.stackTraceLimit
속성에 의해 제공되는 프레임 수 중 더 작은 값까지만 확장됩니다.
Error.captureStackTrace(targetObject[, constructorOpt])
targetObject
<Object>constructorOpt
<Function>
targetObject
에 .stack
속성을 생성합니다. 이 속성에 접근하면 Error.captureStackTrace()
가 호출된 코드의 위치를 나타내는 문자열을 반환합니다.
const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack; // `new Error().stack`과 유사합니다.
추적의 첫 번째 줄은 ${myObject.name}: ${myObject.message}
로 시작합니다.
선택적 constructorOpt
인수는 함수를 허용합니다. 주어진 경우 constructorOpt
를 포함하여 constructorOpt
위의 모든 프레임이 생성된 스택 추적에서 생략됩니다.
constructorOpt
인수는 오류 생성의 구현 세부 정보를 사용자로부터 숨기는 데 유용합니다. 예를 들면 다음과 같습니다.
function a() {
b();
}
function b() {
c();
}
function c() {
// 스택 추적을 두 번 계산하는 것을 피하기 위해 스택 추적 없이 오류를 생성합니다.
const { stackTraceLimit } = Error;
Error.stackTraceLimit = 0;
const error = new Error();
Error.stackTraceLimit = stackTraceLimit;
// 함수 b 위의 스택 추적을 캡처합니다.
Error.captureStackTrace(error, b); // 함수 c와 b 모두 스택 추적에 포함되지 않습니다.
throw error;
}
a();
Error.stackTraceLimit
Error.stackTraceLimit
속성은 스택 추적에 의해 수집되는 스택 프레임 수를 지정합니다(new Error().stack
또는 Error.captureStackTrace(obj)
로 생성된 경우).
기본값은 10
이지만 유효한 JavaScript 숫자로 설정할 수 있습니다. 변경 사항은 값이 변경 된 후 캡처된 모든 스택 추적에 영향을 미칩니다.
숫자가 아닌 값으로 설정하거나 음수로 설정하면 스택 추적이 프레임을 캡처하지 않습니다.
error.cause
다음 버전에서 추가됨: v16.9.0
있는 경우 error.cause
속성은 Error
의 기본 원인입니다. 오류를 catch하고 원래 오류에 계속 액세스하기 위해 다른 메시지나 코드로 새 오류를 throw할 때 사용됩니다.
error.cause
속성은 일반적으로 new Error(message, { cause })
를 호출하여 설정됩니다. cause
옵션이 제공되지 않으면 생성자에 의해 설정되지 않습니다.
이 속성을 사용하면 오류를 연결할 수 있습니다. Error
객체를 직렬화할 때 util.inspect()
는 error.cause
가 설정된 경우 재귀적으로 직렬화합니다.
const cause = new Error('The remote HTTP server responded with a 500 status');
const symptom = new Error('The message failed to send', { cause });
console.log(symptom);
// Prints:
// Error: The message failed to send
// at REPL2:1:17
// at Script.runInThisContext (node:vm:130:12)
// ... 7 lines matching cause stack trace ...
// at [_line] [as _line] (node:internal/readline/interface:886:18) {
// [cause]: Error: The remote HTTP server responded with a 500 status
// at REPL1:1:15
// at Script.runInThisContext (node:vm:130:12)
// at REPLServer.defaultEval (node:repl:574:29)
// at bound (node:domain:426:15)
// at REPLServer.runBound [as eval] (node:domain:437:12)
// at REPLServer.onLine (node:repl:902:10)
// at REPLServer.emit (node:events:549:35)
// at REPLServer.emit (node:domain:482:12)
// at [_onLine] [as _onLine] (node:internal/readline/interface:425:12)
// at [_line] [as _line] (node:internal/readline/interface:886:18)
error.code
error.code
속성은 오류 종류를 식별하는 문자열 레이블입니다. error.code
는 오류를 식별하는 가장 안정적인 방법입니다. Node.js의 주요 버전 간에만 변경됩니다. 반대로 error.message
문자열은 Node.js의 모든 버전 간에 변경될 수 있습니다. 특정 코드에 대한 자세한 내용은 Node.js 오류 코드를 참조하세요.
error.message
error.message
속성은 new Error(message)
를 호출하여 설정된 오류에 대한 문자열 설명입니다. 생성자에 전달된 message
는 Error
의 스택 추적의 첫 번째 줄에도 나타나지만 Error
객체가 생성된 후 이 속성을 변경하면 스택 추적의 첫 번째 줄이 변경되지 않을 수 있습니다 (예: 이 속성이 변경되기 전에 error.stack
을 읽는 경우).
const err = new Error('메시지');
console.error(err.message);
// 출력: 메시지
error.stack
error.stack
속성은 Error
가 인스턴스화된 코드의 지점을 설명하는 문자열입니다.
Error: 계속 일이 발생합니다!
at /home/gbusey/file.js:525:2
at Frobnicator.refrobulate (/home/gbusey/business-logic.js:424:21)
at Actor.<anonymous> (/home/gbusey/actors.js:400:8)
at increaseSynergy (/home/gbusey/actors.js:701:6)
첫 번째 줄은 \<오류 클래스 이름\>: \<오류 메시지\>
로 형식이 지정되고, 그 뒤에 일련의 스택 프레임("at "으로 시작하는 각 줄)이 이어집니다. 각 프레임은 오류가 생성된 코드를 이끈 호출 사이트를 설명합니다. V8은 각 함수에 대한 이름(변수 이름, 함수 이름 또는 객체 메서드 이름별)을 표시하려고 시도하지만 적절한 이름을 찾을 수 없는 경우가 있습니다. V8이 함수의 이름을 결정할 수 없는 경우 해당 프레임에 대한 위치 정보만 표시됩니다. 그렇지 않으면 결정된 함수 이름이 괄호 안에 위치 정보와 함께 표시됩니다.
프레임은 JavaScript 함수에 대해서만 생성됩니다. 예를 들어, 실행이 C++ 애드온 함수인 cheetahify
를 통해 동기적으로 전달되고 이 함수 자체가 JavaScript 함수를 호출하는 경우 cheetahify
호출을 나타내는 프레임은 스택 추적에 존재하지 않습니다.
const cheetahify = require('./native-binding.node');
function makeFaster() {
// `cheetahify()`는 speedy를 *동기적으로* 호출합니다.
cheetahify(function speedy() {
throw new Error('어 이런!');
});
}
makeFaster();
// throw됩니다.
// /home/gbusey/file.js:6
// throw new Error('어 이런!');
// ^
// Error: 어 이런!
// at speedy (/home/gbusey/file.js:6:11)
// at makeFaster (/home/gbusey/file.js:5:3)
// at Object.<anonymous> (/home/gbusey/file.js:10:1)
// at Module._compile (module.js:456:26)
// at Object.Module._extensions..js (module.js:474:10)
// at Module.load (module.js:356:32)
// at Function.Module._load (module.js:312:12)
// at Function.Module.runMain (module.js:497:10)
// at startup (node.js:119:16)
// at node.js:906:3
위치 정보는 다음 중 하나입니다.
- 프레임이 V8 내부의 호출을 나타내는 경우
native
(예:[].forEach
). - 프레임이 Node.js 내부의 호출을 나타내는 경우
plain-filename.js:line:column
. - 프레임이 사용자 프로그램(CommonJS 모듈 시스템 사용) 또는 해당 종속성의 호출을 나타내는 경우
/absolute/path/to/file.js:line:column
. - 프레임이 사용자 프로그램(ES 모듈 시스템 사용) 또는 해당 종속성의 호출을 나타내는 경우
\<transport-protocol\>:///url/to/module/file.mjs:line:column
.
스택 추적을 나타내는 문자열은 error.stack
속성에 액세스할 때 지연 생성됩니다.
스택 추적에서 캡처한 프레임 수는 Error.stackTraceLimit
또는 현재 이벤트 루프 틱에서 사용할 수 있는 프레임 수 중 더 작은 값으로 제한됩니다.
클래스: AssertionError
- 확장: <errors.Error>
어설션 실패를 나타냅니다. 자세한 내용은 클래스: assert.AssertionError
를 참조하십시오.
클래스: RangeError
- 확장: <errors.Error>
제공된 인수가 함수에 허용되는 값의 집합 또는 범위 내에 있지 않음을 나타냅니다. 이는 숫자 범위이거나 지정된 함수 매개변수에 대한 옵션 집합 외부인지 여부입니다.
require('node:net').connect(-1);
// "RangeError: "port" 옵션은 >= 0 및 < 65536이어야 합니다: -1" 오류 발생
Node.js는 인수 유효성 검사의 한 형태로 RangeError
인스턴스를 즉시 생성하고 발생시킵니다.
클래스: ReferenceError
- 확장: <errors.Error>
정의되지 않은 변수에 접근하려는 시도가 있음을 나타냅니다. 이러한 오류는 일반적으로 코드의 오타 또는 다른 방법으로 손상된 프로그램을 나타냅니다.
클라이언트 코드가 이러한 오류를 생성하고 전파할 수 있지만 실제로는 V8만 그렇게 합니다.
doesNotExist;
// ReferenceError 발생, doesNotExist는 이 프로그램의 변수가 아닙니다.
애플리케이션이 코드를 동적으로 생성하고 실행하지 않는 한 ReferenceError
인스턴스는 코드 또는 종속성의 버그를 나타냅니다.
클래스: SyntaxError
- 확장: <errors.Error>
프로그램이 유효한 JavaScript가 아님을 나타냅니다. 이러한 오류는 코드 평가의 결과로만 생성되고 전파될 수 있습니다. 코드 평가는 eval
, Function
, require
또는 vm의 결과로 발생할 수 있습니다. 이러한 오류는 거의 항상 손상된 프로그램을 나타냅니다.
try {
require('node:vm').runInThisContext('binary ! isNotOk');
} catch (err) {
// 'err'는 SyntaxError가 됩니다.
}
SyntaxError
인스턴스는 이를 생성한 컨텍스트에서 복구할 수 없습니다. 다른 컨텍스트에서만 catch할 수 있습니다.
클래스: SystemError
- 확장: <errors.Error>
Node.js는 런타임 환경 내에서 예외가 발생할 때 시스템 오류를 생성합니다. 이는 일반적으로 애플리케이션이 운영 체제 제약 조건을 위반할 때 발생합니다. 예를 들어 애플리케이션이 존재하지 않는 파일을 읽으려고 하면 시스템 오류가 발생합니다.
address
<string> 존재하는 경우 네트워크 연결에 실패한 주소code
<string> 문자열 오류 코드dest
<string> 존재하는 경우 파일 시스템 오류를 보고할 때의 파일 경로 대상errno
<number> 시스템에서 제공하는 오류 번호info
<Object> 존재하는 경우 오류 조건에 대한 추가 세부 정보message
<string> 시스템에서 제공하는 사람이 읽을 수 있는 오류 설명path
<string> 존재하는 경우 파일 시스템 오류를 보고할 때의 파일 경로port
<number> 존재하는 경우 사용할 수 없는 네트워크 연결 포트syscall
<string> 오류를 트리거한 시스템 호출의 이름
error.address
있는 경우, error.address
는 네트워크 연결에 실패한 주소를 설명하는 문자열입니다.
error.code
error.code
속성은 오류 코드를 나타내는 문자열입니다.
error.dest
있는 경우, error.dest
는 파일 시스템 오류를 보고할 때의 파일 경로 대상입니다.
error.errno
error.errno
속성은 libuv 오류 처리
에 정의된 오류 코드에 해당하는 음수입니다.
Windows에서는 시스템에서 제공하는 오류 번호가 libuv에 의해 정규화됩니다.
오류 코드의 문자열 표현을 얻으려면 util.getSystemErrorName(error.errno)
를 사용하십시오.
error.info
있는 경우, error.info
는 오류 조건에 대한 세부 정보가 있는 객체입니다.
error.message
error.message
는 시스템에서 제공하는 사람이 읽을 수 있는 오류 설명입니다.
error.path
있는 경우, error.path
는 관련 없는 잘못된 경로 이름을 포함하는 문자열입니다.
error.port
있는 경우, error.port
는 사용할 수 없는 네트워크 연결 포트입니다.
error.syscall
error.syscall
속성은 실패한 syscall을 설명하는 문자열입니다.
일반적인 시스템 오류
다음은 Node.js 프로그램을 작성할 때 흔히 발생하는 시스템 오류 목록입니다. 전체 목록은 errno(3) man page
를 참조하십시오.
EACCES
(Permission denied): 파일 액세스 권한에 의해 금지된 방식으로 파일에 액세스하려고 시도했습니다.EADDRINUSE
(Address already in use): 로컬 시스템의 다른 서버가 이미 해당 주소를 사용하고 있기 때문에 서버(net
,http
또는https
)를 로컬 주소에 바인딩하지 못했습니다.ECONNREFUSED
(Connection refused): 대상 시스템이 활발하게 거부했기 때문에 연결할 수 없습니다. 일반적으로 외부 호스트에서 비활성 상태인 서비스에 연결하려고 시도한 결과입니다.ECONNRESET
(Connection reset by peer): 피어가 강제로 연결을 닫았습니다. 일반적으로 시간 초과 또는 재부팅으로 인해 원격 소켓에서 연결이 끊어진 결과입니다.http
및net
모듈을 통해 흔히 발생합니다.EEXIST
(File exists): 대상이 존재하지 않아야 하는 작업의 대상이 기존 파일이었습니다.EISDIR
(Is a directory): 작업에서 파일을 예상했지만 주어진 경로 이름이 디렉터리였습니다.EMFILE
(Too many open files in system): 시스템에서 허용 가능한 최대 파일 설명자 수에 도달했으며, 하나 이상이 닫힐 때까지 다른 설명자 요청을 충족할 수 없습니다. 특히 프로세스에 대한 파일 설명자 제한이 낮은 시스템(특히 macOS)에서 동시에 여러 파일을 열 때 발생합니다. 낮은 제한을 해결하려면 Node.js 프로세스를 실행할 셸에서ulimit -n 2048
을 실행하십시오.ENOENT
(No such file or directory): 지정된 경로 이름의 구성 요소가 존재하지 않음을 나타내기 위해fs
작업에서 흔히 발생합니다. 주어진 경로로 엔터티(파일 또는 디렉터리)를 찾을 수 없습니다.ENOTDIR
(Not a directory): 주어진 경로 이름의 구성 요소가 존재했지만 예상대로 디렉터리가 아니었습니다. 일반적으로fs.readdir
에서 발생합니다.ENOTEMPTY
(Directory not empty): 항목이 있는 디렉터리가 빈 디렉터리가 필요한 작업(일반적으로fs.unlink
)의 대상이었습니다.ENOTFOUND
(DNS lookup failed):EAI_NODATA
또는EAI_NONAME
의 DNS 실패를 나타냅니다. 이것은 표준 POSIX 오류가 아닙니다.EPERM
(Operation not permitted): 권한 상승이 필요한 작업을 수행하려고 시도했습니다.EPIPE
(Broken pipe): 데이터를 읽을 프로세스가 없는 파이프, 소켓 또는 FIFO에 쓰기 작업입니다.net
및http
레이어에서 흔히 발생하며, 쓰기 작업이 수행되는 스트림의 원격 측면이 닫혔음을 나타냅니다.ETIMEDOUT
(Operation timed out): 연결된 당사자가 일정 기간 후 적절하게 응답하지 않아 연결 또는 보내기 요청이 실패했습니다. 일반적으로http
또는net
에서 발생합니다. 종종socket.end()
가 제대로 호출되지 않았다는 신호입니다.
클래스: TypeError
- <errors.Error>를 확장합니다.
제공된 인수가 허용 가능한 유형이 아님을 나타냅니다. 예를 들어 문자열을 예상하는 매개변수에 함수를 전달하면 TypeError
가 됩니다.
require('node:url').parse(() => { });
// 문자열을 예상했기 때문에 TypeError를 발생시킵니다.
Node.js는 인수 유효성 검사의 한 형태로 TypeError
인스턴스를 즉시 생성하고 throw합니다.
예외와 오류
JavaScript 예외는 유효하지 않은 작업의 결과 또는 throw
문의 대상으로 throw되는 값입니다. 이러한 값이 Error
의 인스턴스 또는 Error
에서 상속된 클래스의 인스턴스일 필요는 없지만 Node.js 또는 JavaScript 런타임에서 throw되는 모든 예외는 Error
의 인스턴스입니다.
일부 예외는 JavaScript 레이어에서 복구할 수 없습니다. 이러한 예외는 항상 Node.js 프로세스를 충돌시킵니다. 예로는 C++ 레이어의 assert()
검사 또는 abort()
호출이 있습니다.
OpenSSL 오류
crypto
또는 tls
에서 발생하는 오류는 Error
클래스에 속하며 표준 .code
및 .message
속성 외에도 일부 추가 OpenSSL 관련 속성을 가질 수 있습니다.
error.opensslErrorStack
오류가 OpenSSL 라이브러리의 어디에서 발생하는지에 대한 컨텍스트를 제공할 수 있는 오류 배열입니다.
error.function
오류가 발생하는 OpenSSL 함수입니다.
error.library
오류가 발생하는 OpenSSL 라이브러리입니다.
error.reason
오류의 원인을 설명하는 사람이 읽을 수 있는 문자열입니다.
Node.js 오류 코드
ABORT_ERR
추가됨: v15.0.0
작업이 중단되었을 때 사용됩니다(일반적으로 AbortController
사용).
AbortSignal
을 사용하지 않는 API는 일반적으로 이 코드로 오류를 발생시키지 않습니다.
이 코드는 웹 플랫폼의 AbortError
와의 호환성을 위해 Node.js 오류가 사용하는 일반적인 ERR_*
규칙을 사용하지 않습니다.
ERR_ACCESS_DENIED
Node.js가 권한 모델에 의해 제한된 리소스에 액세스하려고 할 때마다 트리거되는 특별한 유형의 오류입니다.
ERR_AMBIGUOUS_ARGUMENT
함수 시그니처를 오해할 수 있다는 것을 암시하는 방식으로 함수 인수가 사용되고 있습니다. 이는 assert.throws(block, message)
의 message
매개변수가 block
에서 던져진 오류 메시지와 일치할 때 node:assert
모듈에서 발생합니다. 왜냐하면 해당 사용법은 사용자가 message
를 block
이 던지지 않을 경우 AssertionError
가 표시할 메시지 대신 예상되는 메시지라고 믿는다는 것을 암시하기 때문입니다.
ERR_ARG_NOT_ITERABLE
반복 가능한 인수(for...of
루프에서 작동하는 값)가 필요했지만 Node.js API에 제공되지 않았습니다.
ERR_ASSERTION
Node.js가 발생해서는 안 되는 예외적인 논리 위반을 감지할 때마다 트리거될 수 있는 특별한 유형의 오류입니다. 이는 일반적으로 node:assert
모듈에 의해 발생합니다.
ERR_ASYNC_CALLBACK
함수가 아닌 것을 AsyncHooks
콜백으로 등록하려는 시도가 있었습니다.
ERR_ASYNC_TYPE
비동기 리소스의 유형이 유효하지 않았습니다. 사용자는 공개 임베더 API를 사용하는 경우 자체 유형을 정의할 수도 있습니다.
ERR_BROTLI_COMPRESSION_FAILED
Brotli 스트림으로 전달된 데이터가 성공적으로 압축되지 않았습니다.
ERR_BROTLI_INVALID_PARAM
Brotli 스트림을 구성하는 동안 잘못된 매개변수 키가 전달되었습니다.
ERR_BUFFER_CONTEXT_NOT_AVAILABLE
Node.js 인스턴스와 연결되지 않은 JS 엔진 컨텍스트에 있는 동안 애드온 또는 임베더 코드에서 Node.js Buffer
인스턴스를 만들려고 시도했습니다. Buffer
메서드에 전달된 데이터는 메서드가 반환될 때 해제됩니다.
이 오류가 발생하면 Buffer
인스턴스를 만드는 대신 일반 Uint8Array
를 만드는 것이 가능합니다. 이는 결과 객체의 프로토타입만 다릅니다. Uint8Array
는 일반적으로 Buffer
가 있는 모든 Node.js 코어 API에서 허용되며 모든 컨텍스트에서 사용할 수 있습니다.
ERR_BUFFER_OUT_OF_BOUNDS
Buffer
의 범위를 벗어난 작업이 시도되었습니다.
ERR_BUFFER_TOO_LARGE
최대 허용 크기보다 큰 Buffer
를 만들려고 시도했습니다.
ERR_CANNOT_WATCH_SIGINT
Node.js가 SIGINT
신호를 감시할 수 없었습니다.
ERR_CHILD_CLOSED_BEFORE_REPLY
부모 프로세스가 응답을 받기 전에 자식 프로세스가 종료되었습니다.
ERR_CHILD_PROCESS_IPC_REQUIRED
IPC 채널을 지정하지 않고 자식 프로세스를 포크할 때 사용됩니다.
ERR_CHILD_PROCESS_STDIO_MAXBUFFER
주 프로세스가 자식 프로세스의 STDERR/STDOUT에서 데이터를 읽으려고 할 때 데이터 길이가 maxBuffer
옵션보다 긴 경우 사용됩니다.
ERR_CLOSED_MESSAGE_PORT
[기록]
버전 | 변경 사항 |
---|---|
v16.2.0, v14.17.1 | 오류 메시지가 다시 도입되었습니다. |
v11.12.0 | 오류 메시지가 제거되었습니다. |
v10.5.0 | 추가됨: v10.5.0 |
일반적으로 .close()
가 호출된 후 닫힌 상태의 MessagePort
인스턴스를 사용하려는 시도가 있었습니다.
ERR_CONSOLE_WRITABLE_STREAM
Console
이 stdout
스트림 없이 인스턴스화되었거나 Console
에 쓰기 불가능한 stdout
또는 stderr
스트림이 있습니다.
ERR_CONSTRUCT_CALL_INVALID
추가됨: v12.5.0
호출할 수 없는 클래스 생성자가 호출되었습니다.
ERR_CONSTRUCT_CALL_REQUIRED
클래스에 대한 생성자가 new
없이 호출되었습니다.
ERR_CONTEXT_NOT_INITIALIZED
API에 전달된 vm 컨텍스트가 아직 초기화되지 않았습니다. 이는 컨텍스트를 생성하는 동안 오류가 발생하고 (잡히는 경우) 발생할 수 있습니다. 예를 들어 컨텍스트를 생성할 때 할당에 실패하거나 최대 호출 스택 크기에 도달한 경우입니다.
ERR_CRYPTO_CUSTOM_ENGINE_NOT_SUPPORTED
사용 중인 OpenSSL 버전에 의해 지원되지 않는 OpenSSL 엔진이 요청되었습니다 (예: clientCertEngine
또는 privateKeyEngine
TLS 옵션을 통해). 이는 컴파일 시간 플래그 OPENSSL_NO_ENGINE
때문일 가능성이 높습니다.
ERR_CRYPTO_ECDH_INVALID_FORMAT
crypto.ECDH()
클래스 getPublicKey()
메서드에 대한 format
인수에 잘못된 값이 전달되었습니다.
ERR_CRYPTO_ECDH_INVALID_PUBLIC_KEY
crypto.ECDH()
클래스 computeSecret()
메서드에 대한 key
인수에 잘못된 값이 전달되었습니다. 이는 공개 키가 타원 곡선 외부에 있음을 의미합니다.
ERR_CRYPTO_ENGINE_UNKNOWN
잘못된 암호화 엔진 식별자가 require('node:crypto').setEngine()
에 전달되었습니다.
ERR_CRYPTO_FIPS_FORCED
--force-fips
명령줄 인수가 사용되었지만 node:crypto
모듈에서 FIPS 모드를 활성화하거나 비활성화하려는 시도가 있었습니다.
ERR_CRYPTO_FIPS_UNAVAILABLE
FIPS 모드를 활성화하거나 비활성화하려는 시도가 있었지만 FIPS 모드를 사용할 수 없었습니다.
ERR_CRYPTO_HASH_FINALIZED
hash.digest()
가 여러 번 호출되었습니다. hash.digest()
메서드는 Hash
객체의 인스턴스당 한 번만 호출해야 합니다.
ERR_CRYPTO_HASH_UPDATE_FAILED
hash.update()
가 어떤 이유로든 실패했습니다. 이는 거의 발생하지 않아야 합니다.
ERR_CRYPTO_INCOMPATIBLE_KEY
주어진 암호화 키가 시도된 작업과 호환되지 않습니다.
ERR_CRYPTO_INCOMPATIBLE_KEY_OPTIONS
선택한 공개 키 또는 개인 키 인코딩이 다른 옵션과 호환되지 않습니다.
ERR_CRYPTO_INITIALIZATION_FAILED
추가된 버전: v15.0.0
암호화 하위 시스템 초기화에 실패했습니다.
ERR_CRYPTO_INVALID_AUTH_TAG
추가된 버전: v15.0.0
잘못된 인증 태그가 제공되었습니다.
ERR_CRYPTO_INVALID_COUNTER
추가된 버전: v15.0.0
카운터 모드 암호에 대해 잘못된 카운터가 제공되었습니다.
ERR_CRYPTO_INVALID_CURVE
추가된 버전: v15.0.0
잘못된 타원 곡선이 제공되었습니다.
ERR_CRYPTO_INVALID_DIGEST
잘못된 암호화 다이제스트 알고리즘이 지정되었습니다.
ERR_CRYPTO_INVALID_IV
추가된 버전: v15.0.0
잘못된 초기화 벡터가 제공되었습니다.
ERR_CRYPTO_INVALID_JWK
추가된 버전: v15.0.0
잘못된 JSON 웹 키가 제공되었습니다.
ERR_CRYPTO_INVALID_KEYLEN
추가된 버전: v15.0.0
잘못된 키 길이가 제공되었습니다.
ERR_CRYPTO_INVALID_KEYPAIR
추가된 버전: v15.0.0
잘못된 키 쌍이 제공되었습니다.
ERR_CRYPTO_INVALID_KEYTYPE
추가된 버전: v15.0.0
잘못된 키 유형이 제공되었습니다.
ERR_CRYPTO_INVALID_KEY_OBJECT_TYPE
제공된 암호 키 객체의 유형이 시도된 작업에 유효하지 않습니다.
ERR_CRYPTO_INVALID_MESSAGELEN
추가된 버전: v15.0.0
유효하지 않은 메시지 길이가 제공되었습니다.
ERR_CRYPTO_INVALID_SCRYPT_PARAMS
추가된 버전: v15.0.0
하나 이상의 crypto.scrypt()
또는 crypto.scryptSync()
매개변수가 해당 유효 범위 밖에 있습니다.
ERR_CRYPTO_INVALID_STATE
유효하지 않은 상태의 객체에 암호화 메서드가 사용되었습니다. 예를 들어 cipher.final()
을 호출하기 전에 cipher.getAuthTag()
를 호출하는 경우입니다.
ERR_CRYPTO_INVALID_TAG_LENGTH
추가된 버전: v15.0.0
유효하지 않은 인증 태그 길이가 제공되었습니다.
ERR_CRYPTO_JOB_INIT_FAILED
추가된 버전: v15.0.0
비동기 암호화 작업의 초기화에 실패했습니다.
ERR_CRYPTO_JWK_UNSUPPORTED_CURVE
키의 타원 곡선이 JSON Web Key Elliptic Curve Registry에서 사용하도록 등록되지 않았습니다.
ERR_CRYPTO_JWK_UNSUPPORTED_KEY_TYPE
키의 비대칭 키 유형이 JSON Web Key Types Registry에서 사용하도록 등록되지 않았습니다.
ERR_CRYPTO_OPERATION_FAILED
추가된 버전: v15.0.0
암호화 작업이 지정되지 않은 이유로 실패했습니다.
ERR_CRYPTO_PBKDF2_ERROR
지정되지 않은 이유로 PBKDF2 알고리즘이 실패했습니다. OpenSSL은 자세한 내용을 제공하지 않으므로 Node.js도 제공하지 않습니다.
ERR_CRYPTO_SCRYPT_NOT_SUPPORTED
Node.js가 scrypt
지원 없이 컴파일되었습니다. 공식 릴리스 바이너리에서는 불가능하지만 배포판 빌드를 포함한 사용자 정의 빌드에서는 발생할 수 있습니다.
ERR_CRYPTO_SIGN_KEY_REQUIRED
서명 key
가 sign.sign()
메서드에 제공되지 않았습니다.
ERR_CRYPTO_TIMING_SAFE_EQUAL_LENGTH
서로 다른 길이의 Buffer
, TypedArray
또는 DataView
인수로 crypto.timingSafeEqual()
이 호출되었습니다.
ERR_CRYPTO_UNKNOWN_CIPHER
알 수 없는 암호가 지정되었습니다.
ERR_CRYPTO_UNKNOWN_DH_GROUP
알 수 없는 Diffie-Hellman 그룹 이름이 지정되었습니다. 유효한 그룹 이름 목록은 crypto.getDiffieHellman()
을 참조하십시오.
ERR_CRYPTO_UNSUPPORTED_OPERATION
추가된 버전: v15.0.0, v14.18.0
지원되지 않는 암호화 작업을 호출하려는 시도가 있었습니다.
ERR_DEBUGGER_ERROR
추가된 버전: v16.4.0, v14.17.4
디버거에서 오류가 발생했습니다.
ERR_DEBUGGER_STARTUP_ERROR
추가된 버전: v16.4.0, v14.17.4
디버거가 필요한 호스트/포트가 사용 가능해질 때까지 기다리는 동안 시간 초과되었습니다.
ERR_DIR_CLOSED
fs.Dir
가 이전에 닫혔습니다.
ERR_DIR_CONCURRENT_OPERATION
추가된 버전: v14.3.0
진행 중인 비동기 작업이 있는 fs.Dir
에서 동기 읽기 또는 닫기 호출이 시도되었습니다.
ERR_DLOPEN_DISABLED
추가된 버전: v16.10.0, v14.19.0
네이티브 애드온 로딩이 --no-addons
를 사용하여 비활성화되었습니다.
ERR_DLOPEN_FAILED
추가된 버전: v15.0.0
process.dlopen()
호출이 실패했습니다.
ERR_DNS_SET_SERVERS_FAILED
c-ares
가 DNS 서버를 설정하지 못했습니다.
ERR_DOMAIN_CALLBACK_NOT_AVAILABLE
node:domain
모듈은 process.setUncaughtExceptionCaptureCallback()
이 이전 시점에 호출되었기 때문에 필요한 오류 처리 후크를 설정할 수 없어 사용할 수 없었습니다.
ERR_DOMAIN_CANNOT_SET_UNCAUGHT_EXCEPTION_CAPTURE
node:domain
모듈이 이전 시점에 로드되었기 때문에 process.setUncaughtExceptionCaptureCallback()
을 호출할 수 없습니다.
스택 추적은 node:domain
모듈이 로드된 시점을 포함하도록 확장됩니다.
ERR_DUPLICATE_STARTUP_SNAPSHOT_MAIN_FUNCTION
v8.startupSnapshot.setDeserializeMainFunction()
은 이미 이전에 호출되었기 때문에 호출할 수 없습니다.
ERR_ENCODING_INVALID_ENCODED_DATA
TextDecoder()
API에 제공된 데이터가 제공된 인코딩에 따라 유효하지 않습니다.
ERR_ENCODING_NOT_SUPPORTED
TextDecoder()
API에 제공된 인코딩이 WHATWG 지원 인코딩 중 하나가 아닙니다.
ERR_EVAL_ESM_CANNOT_PRINT
--print
는 ESM 입력과 함께 사용할 수 없습니다.
ERR_EVENT_RECURSION
EventTarget
에서 이벤트를 재귀적으로 디스패치하려는 시도가 있을 때 발생합니다.
ERR_EXECUTION_ENVIRONMENT_NOT_AVAILABLE
JS 실행 컨텍스트가 Node.js 환경과 연결되어 있지 않습니다. 이는 Node.js가 임베디드 라이브러리로 사용되고 JS 엔진에 대한 일부 후크가 제대로 설정되지 않은 경우에 발생할 수 있습니다.
ERR_FALSY_VALUE_REJECTION
util.callbackify()
를 통해 콜백화된 Promise
가 거짓 값으로 거부되었습니다.
ERR_FEATURE_UNAVAILABLE_ON_PLATFORM
추가된 버전: v14.0.0
Node.js를 실행 중인 현재 플랫폼에서 사용할 수 없는 기능을 사용하는 경우에 사용됩니다.
ERR_FS_CP_DIR_TO_NON_DIR
추가된 버전: v16.7.0
fs.cp()
를 사용하여 디렉토리를 비 디렉토리(파일, 심볼릭 링크 등)로 복사하려는 시도가 있었습니다.
ERR_FS_CP_EEXIST
추가된 버전: v16.7.0
force
및 errorOnExist
가 true
로 설정된 상태에서 fs.cp()
를 사용하여 이미 존재하는 파일을 덮어쓰려고 했습니다.
ERR_FS_CP_EINVAL
추가된 버전: v16.7.0
fs.cp()
를 사용할 때 src
또는 dest
가 유효하지 않은 경로를 가리켰습니다.
ERR_FS_CP_FIFO_PIPE
추가된 버전: v16.7.0
fs.cp()
를 사용하여 명명된 파이프를 복사하려는 시도가 있었습니다.
ERR_FS_CP_NON_DIR_TO_DIR
추가된 버전: v16.7.0
fs.cp()
를 사용하여 비 디렉토리(파일, 심볼릭 링크 등)를 디렉토리로 복사하려는 시도가 있었습니다.
ERR_FS_CP_SOCKET
추가된 버전: v16.7.0
fs.cp()
를 사용하여 소켓에 복사하려는 시도가 있었습니다.
ERR_FS_CP_SYMLINK_TO_SUBDIRECTORY
Added in: v16.7.0
fs.cp()
을 사용할 때 dest
의 심볼릭 링크가 src
의 하위 디렉터리를 가리켰습니다.
ERR_FS_CP_UNKNOWN
Added in: v16.7.0
fs.cp()
을 사용하여 알 수 없는 파일 유형으로 복사하려 했습니다.
ERR_FS_EISDIR
경로는 디렉터리입니다.
ERR_FS_FILE_TOO_LARGE
파일 크기가 Buffer
의 최대 허용 크기보다 큰 파일을 읽으려고 했습니다.
ERR_HTTP2_ALTSVC_INVALID_ORIGIN
HTTP/2 ALTSVC 프레임에는 유효한 Origin이 필요합니다.
ERR_HTTP2_ALTSVC_LENGTH
HTTP/2 ALTSVC 프레임은 최대 16,382바이트의 페이로드로 제한됩니다.
ERR_HTTP2_CONNECT_AUTHORITY
CONNECT
메서드를 사용하는 HTTP/2 요청의 경우 :authority
유사 헤더가 필요합니다.
ERR_HTTP2_CONNECT_PATH
CONNECT
메서드를 사용하는 HTTP/2 요청의 경우 :path
유사 헤더는 금지됩니다.
ERR_HTTP2_CONNECT_SCHEME
CONNECT
메서드를 사용하는 HTTP/2 요청의 경우 :scheme
유사 헤더는 금지됩니다.
ERR_HTTP2_ERROR
특정되지 않은 HTTP/2 오류가 발생했습니다.
ERR_HTTP2_GOAWAY_SESSION
연결된 피어로부터 GOAWAY
프레임을 수신한 후에는 새 HTTP/2 스트림을 열 수 없습니다.
ERR_HTTP2_HEADERS_AFTER_RESPOND
HTTP/2 응답이 시작된 후 추가 헤더가 지정되었습니다.
ERR_HTTP2_HEADERS_SENT
여러 응답 헤더를 보내려고 했습니다.
ERR_HTTP2_HEADER_SINGLE_VALUE
단일 값만 있어야 하는 HTTP/2 헤더 필드에 여러 값이 제공되었습니다.
ERR_HTTP2_INFO_STATUS_NOT_ALLOWED
정보 HTTP 상태 코드(1xx
)는 HTTP/2 응답의 응답 상태 코드로 설정할 수 없습니다.
ERR_HTTP2_INVALID_CONNECTION_HEADERS
HTTP/1 연결 특정 헤더는 HTTP/2 요청 및 응답에서 사용할 수 없습니다.
ERR_HTTP2_INVALID_HEADER_VALUE
잘못된 HTTP/2 헤더 값이 지정되었습니다.
ERR_HTTP2_INVALID_INFO_STATUS
유효하지 않은 HTTP 정보 상태 코드가 지정되었습니다. 정보 상태 코드는 100
에서 199
사이의 정수여야 합니다(경계값 포함).
ERR_HTTP2_INVALID_ORIGIN
HTTP/2 ORIGIN
프레임에는 유효한 출처가 필요합니다.
ERR_HTTP2_INVALID_PACKED_SETTINGS_LENGTH
http2.getUnpackedSettings()
API에 전달된 입력 Buffer
및 Uint8Array
인스턴스의 길이는 6의 배수여야 합니다.
ERR_HTTP2_INVALID_PSEUDOHEADER
유효한 HTTP/2 의사 헤더(:status
, :path
, :authority
, :scheme
, 및 :method
)만 사용할 수 있습니다.
ERR_HTTP2_INVALID_SESSION
이미 소멸된 Http2Session
객체에 대해 작업이 수행되었습니다.
ERR_HTTP2_INVALID_SETTING_VALUE
유효하지 않은 값이 HTTP/2 설정에 지정되었습니다.
ERR_HTTP2_INVALID_STREAM
이미 소멸된 스트림에 대해 작업이 수행되었습니다.
ERR_HTTP2_MAX_PENDING_SETTINGS_ACK
HTTP/2 SETTINGS
프레임이 연결된 피어에 전송될 때마다 피어는 새로운 SETTINGS
를 수신하고 적용했다는 확인을 보내야 합니다. 기본적으로 승인되지 않은 SETTINGS
프레임의 최대 개수를 언제든지 보낼 수 있습니다. 이 오류 코드는 해당 제한에 도달했을 때 사용됩니다.
ERR_HTTP2_NESTED_PUSH
푸시 스트림 내에서 새 푸시 스트림을 시작하려고 시도했습니다. 중첩된 푸시 스트림은 허용되지 않습니다.
ERR_HTTP2_NO_MEM
http2session.setLocalWindowSize(windowSize)
API를 사용하는 동안 메모리가 부족합니다.
ERR_HTTP2_NO_SOCKET_MANIPULATION
Http2Session
에 연결된 소켓을 직접 조작(읽기, 쓰기, 일시 중지, 재개 등)하려고 시도했습니다.
ERR_HTTP2_ORIGIN_LENGTH
HTTP/2 ORIGIN
프레임은 길이가 16382바이트로 제한됩니다.
ERR_HTTP2_OUT_OF_STREAMS
단일 HTTP/2 세션에서 생성된 스트림 수가 최대 제한에 도달했습니다.
ERR_HTTP2_PAYLOAD_FORBIDDEN
페이로드가 금지된 HTTP 응답 코드에 대해 메시지 페이로드가 지정되었습니다.
ERR_HTTP2_PING_CANCEL
HTTP/2 핑이 취소되었습니다.
ERR_HTTP2_PING_LENGTH
HTTP/2 핑 페이로드는 정확히 8바이트 길이여야 합니다.
ERR_HTTP2_PSEUDOHEADER_NOT_ALLOWED
HTTP/2 유사 헤더가 부적절하게 사용되었습니다. 유사 헤더는 :
접두사로 시작하는 헤더 키 이름입니다.
ERR_HTTP2_PUSH_DISABLED
클라이언트에서 비활성화된 푸시 스트림을 생성하려고 시도했습니다.
ERR_HTTP2_SEND_FILE
Http2Stream.prototype.responseWithFile()
API를 사용하여 디렉터리를 보내려고 시도했습니다.
ERR_HTTP2_SEND_FILE_NOSEEK
Http2Stream.prototype.responseWithFile()
API를 사용하여 일반 파일이 아닌 것을 보내려고 시도했지만 offset
또는 length
옵션이 제공되었습니다.
ERR_HTTP2_SESSION_ERROR
Http2Session
이 0이 아닌 오류 코드로 닫혔습니다.
ERR_HTTP2_SETTINGS_CANCEL
Http2Session
설정이 취소되었습니다.
ERR_HTTP2_SOCKET_BOUND
이미 다른 Http2Session
객체에 바인딩된 net.Socket
또는 tls.TLSSocket
에 Http2Session
객체를 연결하려고 시도했습니다.
ERR_HTTP2_SOCKET_UNBOUND
이미 닫힌 Http2Session
의 socket
속성을 사용하려고 시도했습니다.
ERR_HTTP2_STATUS_101
HTTP/2에서는 101
정보 상태 코드의 사용이 금지됩니다.
ERR_HTTP2_STATUS_INVALID
잘못된 HTTP 상태 코드가 지정되었습니다. 상태 코드는 100
과 599
사이의 정수여야 합니다(경계값 포함).
ERR_HTTP2_STREAM_CANCEL
연결된 피어로 데이터가 전송되기 전에 Http2Stream
이 파괴되었습니다.
ERR_HTTP2_STREAM_ERROR
RST_STREAM
프레임에 0이 아닌 오류 코드가 지정되었습니다.
ERR_HTTP2_STREAM_SELF_DEPENDENCY
HTTP/2 스트림의 우선 순위를 설정할 때 스트림은 부모 스트림의 종속성으로 표시될 수 있습니다. 이 오류 코드는 스트림 자체를 종속 항목으로 표시하려고 할 때 사용됩니다.
ERR_HTTP2_TOO_MANY_CUSTOM_SETTINGS
지원되는 사용자 지정 설정 수(10)를 초과했습니다.
ERR_HTTP2_TOO_MANY_INVALID_FRAMES
Added in: v15.14.0
maxSessionInvalidFrames
옵션을 통해 지정된 피어가 보낸 허용 가능한 잘못된 HTTP/2 프로토콜 프레임 제한을 초과했습니다.
ERR_HTTP2_TRAILERS_ALREADY_SENT
트레일링 헤더가 Http2Stream
에서 이미 전송되었습니다.
ERR_HTTP2_TRAILERS_NOT_READY
http2stream.sendTrailers()
메서드는 Http2Stream
객체에서 'wantTrailers'
이벤트가 발생한 후에 호출할 수 있습니다. 'wantTrailers'
이벤트는 Http2Stream
에 대해 waitForTrailers
옵션이 설정된 경우에만 발생합니다.
ERR_HTTP2_UNSUPPORTED_PROTOCOL
http2.connect()
에 http:
또는 https:
이외의 프로토콜을 사용하는 URL이 전달되었습니다.
ERR_HTTP_BODY_NOT_ALLOWED
콘텐츠를 허용하지 않는 HTTP 응답에 쓰려고 할 때 오류가 발생합니다.
ERR_HTTP_CONTENT_LENGTH_MISMATCH
응답 본문 크기가 지정된 콘텐츠 길이 헤더 값과 일치하지 않습니다.
ERR_HTTP_HEADERS_SENT
헤더가 이미 전송된 후에 더 많은 헤더를 추가하려고 시도했습니다.
ERR_HTTP_INVALID_HEADER_VALUE
잘못된 HTTP 헤더 값이 지정되었습니다.
ERR_HTTP_INVALID_STATUS_CODE
상태 코드가 일반 상태 코드 범위(100-999)를 벗어났습니다.
ERR_HTTP_REQUEST_TIMEOUT
클라이언트가 허용된 시간 내에 전체 요청을 보내지 않았습니다.
ERR_HTTP_SOCKET_ASSIGNED
지정된 ServerResponse
에 이미 소켓이 할당되었습니다.
ERR_HTTP_SOCKET_ENCODING
소켓 인코딩 변경은 RFC 7230 섹션 3에 따라 허용되지 않습니다.
ERR_HTTP_TRAILER_INVALID
전송 인코딩이 이를 지원하지 않더라도 Trailer
헤더가 설정되었습니다.
ERR_ILLEGAL_CONSTRUCTOR
공용이 아닌 생성자를 사용하여 객체를 생성하려고 시도했습니다.
ERR_IMPORT_ATTRIBUTE_MISSING
Added in: v21.1.0
가져오기 속성이 누락되어 지정된 모듈을 가져올 수 없습니다.
ERR_IMPORT_ATTRIBUTE_TYPE_INCOMPATIBLE
Added in: v21.1.0
가져오기 type
속성이 제공되었지만, 지정된 모듈은 다른 유형입니다.
ERR_IMPORT_ATTRIBUTE_UNSUPPORTED
Added in: v21.0.0, v20.10.0, v18.19.0
이 Node.js 버전에서는 가져오기 속성이 지원되지 않습니다.
ERR_INCOMPATIBLE_OPTION_PAIR
옵션 쌍이 서로 호환되지 않아 동시에 사용할 수 없습니다.
ERR_INPUT_TYPE_NOT_ALLOWED
[Stable: 1 - Experimental]
Stable: 1 Stability: 1 - 실험적
--input-type
플래그가 파일을 실행하려고 시도하는 데 사용되었습니다. 이 플래그는 --eval
, --print
또는 STDIN
을 통한 입력에만 사용할 수 있습니다.
ERR_INSPECTOR_ALREADY_ACTIVATED
node:inspector
모듈을 사용하는 동안, 인스펙터가 이미 포트에서 수신 대기하기 시작했을 때 활성화하려고 시도했습니다. 다른 주소에서 활성화하기 전에 inspector.close()
를 사용하십시오.
ERR_INSPECTOR_ALREADY_CONNECTED
node:inspector
모듈을 사용하는 동안, 인스펙터가 이미 연결되었을 때 연결하려고 시도했습니다.
ERR_INSPECTOR_CLOSED
node:inspector
모듈을 사용하는 동안, 세션이 이미 닫힌 후 인스펙터를 사용하려고 시도했습니다.
ERR_INSPECTOR_COMMAND
node:inspector
모듈을 통해 명령을 실행하는 동안 오류가 발생했습니다.
ERR_INSPECTOR_NOT_ACTIVE
inspector.waitForDebugger()
가 호출될 때 inspector
가 활성화되지 않았습니다.
ERR_INSPECTOR_NOT_AVAILABLE
node:inspector
모듈을 사용할 수 없습니다.
ERR_INSPECTOR_NOT_CONNECTED
node:inspector
모듈을 사용하는 동안, 인스펙터가 연결되기 전에 사용하려고 시도했습니다.
ERR_INSPECTOR_NOT_WORKER
워커 스레드에서만 사용할 수 있는 API가 메인 스레드에서 호출되었습니다.
ERR_INTERNAL_ASSERTION
Node.js에 버그가 있거나 Node.js 내부를 잘못 사용했습니다. 오류를 수정하려면 https://github.com/nodejs/node/issues에 문제를 여십시오.
ERR_INVALID_ADDRESS
제공된 주소를 Node.js API가 이해하지 못합니다.
ERR_INVALID_ADDRESS_FAMILY
제공된 주소 체계를 Node.js API가 이해하지 못합니다.
ERR_INVALID_ARG_TYPE
잘못된 유형의 인수가 Node.js API에 전달되었습니다.
ERR_INVALID_ARG_VALUE
주어진 인수에 대해 잘못되었거나 지원되지 않는 값이 전달되었습니다.
ERR_INVALID_ASYNC_ID
잘못된 asyncId
또는 triggerAsyncId
가 AsyncHooks
를 사용하여 전달되었습니다. -1보다 작은 ID는 발생하지 않아야 합니다.
ERR_INVALID_BUFFER_SIZE
Buffer
에서 스왑이 수행되었지만 해당 크기가 작업과 호환되지 않았습니다.
ERR_INVALID_CHAR
헤더에서 잘못된 문자가 감지되었습니다.
ERR_INVALID_CURSOR_POS
지정된 스트림의 커서를 지정된 열 없이 지정된 행으로 이동할 수 없습니다.
ERR_INVALID_FD
파일 설명자('fd')가 유효하지 않습니다 (예: 음수 값).
ERR_INVALID_FD_TYPE
파일 설명자('fd') 유형이 유효하지 않습니다.
ERR_INVALID_FILE_URL_HOST
file:
URL을 사용하는 Node.js API (예: fs
모듈의 특정 함수)에서 호환되지 않는 호스트를 가진 파일 URL을 발견했습니다. 이 상황은 localhost
또는 빈 호스트만 지원되는 Unix 계열 시스템에서만 발생할 수 있습니다.
ERR_INVALID_FILE_URL_PATH
file:
URL을 사용하는 Node.js API (예: fs
모듈의 특정 함수)에서 호환되지 않는 경로를 가진 파일 URL을 발견했습니다. 경로를 사용할 수 있는지 여부를 결정하는 정확한 의미 체계는 플랫폼에 따라 다릅니다.
ERR_INVALID_HANDLE_TYPE
IPC 통신 채널을 통해 자식 프로세스로 지원되지 않는 "핸들"을 보내려고 시도했습니다. 자세한 내용은 subprocess.send()
및 process.send()
를 참조하십시오.
ERR_INVALID_HTTP_TOKEN
잘못된 HTTP 토큰이 제공되었습니다.
ERR_INVALID_IP_ADDRESS
IP 주소가 유효하지 않습니다.
ERR_INVALID_MIME_SYNTAX
MIME의 구문이 유효하지 않습니다.
ERR_INVALID_MODULE
Added in: v15.0.0, v14.18.0
존재하지 않거나 유효하지 않은 모듈을 로드하려고 시도했습니다.
ERR_INVALID_MODULE_SPECIFIER
가져온 모듈 문자열이 유효하지 않은 URL, 패키지 이름 또는 패키지 하위 경로 지정자입니다.
ERR_INVALID_OBJECT_DEFINE_PROPERTY
객체의 속성에 유효하지 않은 속성을 설정하는 동안 오류가 발생했습니다.
ERR_INVALID_PACKAGE_CONFIG
유효하지 않은 package.json
파일을 구문 분석하지 못했습니다.
ERR_INVALID_PACKAGE_TARGET
package.json
"exports"
필드에 시도한 모듈 확인에 대한 유효하지 않은 대상 매핑 값이 포함되어 있습니다.
ERR_INVALID_PROTOCOL
유효하지 않은 options.protocol
이 http.request()
에 전달되었습니다.
ERR_INVALID_REPL_EVAL_CONFIG
REPL
구성에서 breakEvalOnSigint
및 eval
옵션이 모두 설정되었으며 이는 지원되지 않습니다.
ERR_INVALID_REPL_INPUT
입력을 REPL
에서 사용할 수 없습니다. 이 오류가 사용되는 조건은 REPL
문서에 설명되어 있습니다.
ERR_INVALID_RETURN_PROPERTY
함수 옵션이 실행 시 반환된 객체 속성 중 하나에 대해 유효한 값을 제공하지 않는 경우 발생합니다.
ERR_INVALID_RETURN_PROPERTY_VALUE
함수 옵션이 실행 시 반환된 객체 속성 중 하나에 대해 예상되는 값 유형을 제공하지 않는 경우 발생합니다.
ERR_INVALID_RETURN_VALUE
함수가 Promise를 반환해야 하는 경우와 같이 함수 옵션이 실행 시 예상되는 값 유형을 반환하지 않는 경우 발생합니다.
ERR_INVALID_STATE
Added in: v15.0.0
유효하지 않은 상태로 인해 작업을 완료할 수 없음을 나타냅니다. 예를 들어 개체가 이미 소멸되었거나 다른 작업을 수행 중일 수 있습니다.
ERR_INVALID_SYNC_FORK_INPUT
Buffer
, TypedArray
, DataView
또는 string
이 비동기 포크에 대한 stdio 입력으로 제공되었습니다. 자세한 내용은 child_process
모듈에 대한 문서를 참조하세요.
ERR_INVALID_THIS
Node.js API 함수가 호환되지 않는 this
값으로 호출되었습니다.
const urlSearchParams = new URLSearchParams('foo=bar&baz=new');
const buf = Buffer.alloc(1);
urlSearchParams.has.call(buf, 'foo');
// 'ERR_INVALID_THIS' 코드가 있는 TypeError를 발생시킵니다.
ERR_INVALID_TUPLE
WHATWG URLSearchParams
생성자에 제공된 iterable
의 요소가 [name, value]
튜플을 나타내지 않았습니다. 즉, 요소가 iterable이 아니거나 정확히 두 개의 요소로 구성되지 않은 경우입니다.
ERR_INVALID_TYPESCRIPT_SYNTAX
추가된 버전: v23.0.0
제공된 TypeScript 구문이 유효하지 않거나 지원되지 않습니다. 이는 타입 제거를 통해 변환이 필요한 TypeScript 구문을 사용할 때 발생할 수 있습니다.
ERR_INVALID_URI
잘못된 URI가 전달되었습니다.
ERR_INVALID_URL
잘못된 URL이 WHATWG URL
생성자 또는 레거시 url.parse()
에 전달되어 구문 분석되었습니다. 발생된 오류 객체에는 일반적으로 구문 분석에 실패한 URL을 포함하는 추가 속성 'input'
이 있습니다.
ERR_INVALID_URL_SCHEME
특정 목적에 맞지 않는 스킴(프로토콜)의 URL을 사용하려고 시도했습니다. 이는 fs
모듈의 WHATWG URL API 지원에서만 사용되지만(파일 스킴 'file'
이 있는 URL만 허용), 향후 다른 Node.js API에서도 사용될 수 있습니다.
ERR_IPC_CHANNEL_CLOSED
이미 닫힌 IPC 통신 채널을 사용하려고 시도했습니다.
ERR_IPC_DISCONNECTED
이미 연결이 끊어진 IPC 통신 채널의 연결을 끊으려고 시도했습니다. 자세한 내용은 child_process
모듈의 설명서를 참조하세요.
ERR_IPC_ONE_PIPE
둘 이상의 IPC 통신 채널을 사용하여 자식 Node.js 프로세스를 만들려고 시도했습니다. 자세한 내용은 child_process
모듈의 설명서를 참조하세요.
ERR_IPC_SYNC_FORK
동기적으로 포크된 Node.js 프로세스와 IPC 통신 채널을 열려고 시도했습니다. 자세한 내용은 child_process
모듈 문서를 참조하십시오.
ERR_IP_BLOCKED
IP가 net.BlockList
에 의해 차단되었습니다.
ERR_LOADER_CHAIN_INCOMPLETE
추가된 버전: v18.6.0, v16.17.0
ESM 로더 후크가 next()
를 호출하지 않고 명시적으로 단락을 알리지 않고 반환되었습니다.
ERR_LOAD_SQLITE_EXTENSION
추가된 버전: v23.5.0
SQLite 확장 프로그램을 로드하는 동안 오류가 발생했습니다.
ERR_MEMORY_ALLOCATION_FAILED
메모리 할당 시도(일반적으로 C++ 레이어에서)가 실패했습니다.
ERR_MESSAGE_TARGET_CONTEXT_UNAVAILABLE
추가된 버전: v14.5.0, v12.19.0
MessagePort
로 게시된 메시지를 대상 vm Context
에서 역직렬화할 수 없습니다. 모든 Node.js 객체를 현재 모든 컨텍스트에서 성공적으로 인스턴스화할 수 있는 것은 아니며, 이 경우 postMessage()
를 사용하여 전송하려고 하면 수신 측에서 실패할 수 있습니다.
ERR_METHOD_NOT_IMPLEMENTED
메서드가 필요하지만 구현되지 않았습니다.
ERR_MISSING_ARGS
Node.js API의 필수 인수가 전달되지 않았습니다. 이는 API 사양을 엄격히 준수하기 위해서만 사용됩니다(일부 경우에는 func(undefined)
는 허용하지만 func()
는 허용하지 않을 수 있음). 대부분의 네이티브 Node.js API에서 func(undefined)
와 func()
는 동일하게 처리되며, 대신 ERR_INVALID_ARG_TYPE
오류 코드가 사용될 수 있습니다.
ERR_MISSING_OPTION
옵션 객체를 허용하는 API의 경우 일부 옵션은 필수일 수 있습니다. 필수 옵션이 누락된 경우 이 코드가 발생합니다.
ERR_MISSING_PASSPHRASE
암호 구문을 지정하지 않고 암호화된 키를 읽으려고 시도했습니다.
ERR_MISSING_PLATFORM_FOR_WORKER
이 Node.js 인스턴스에서 사용하는 V8 플랫폼은 Worker 생성을 지원하지 않습니다. 이는 Worker에 대한 임베더 지원 부족으로 인해 발생합니다. 특히 이 오류는 Node.js의 표준 빌드에서는 발생하지 않습니다.
ERR_MODULE_NOT_FOUND
import
작업이나 프로그램 진입점을 로드하는 동안 ECMAScript 모듈 로더가 모듈 파일을 확인할 수 없습니다.
ERR_MULTIPLE_CALLBACK
콜백이 두 번 이상 호출되었습니다.
콜백은 쿼리가 충족되거나 거부될 수 있지만 동시에 둘 다 될 수 없으므로 거의 항상 한 번만 호출되도록 되어 있습니다. 후자는 콜백을 두 번 이상 호출하면 가능합니다.
ERR_NAPI_CONS_FUNCTION
Node-API
를 사용하는 동안 전달된 생성자가 함수가 아니었습니다.
ERR_NAPI_INVALID_DATAVIEW_ARGS
napi_create_dataview()
를 호출하는 동안 주어진 offset
이 데이터 뷰의 범위를 벗어나거나 offset + length
가 주어진 buffer
의 길이보다 컸습니다.
ERR_NAPI_INVALID_TYPEDARRAY_ALIGNMENT
napi_create_typedarray()
를 호출하는 동안 제공된 offset
이 요소 크기의 배수가 아니었습니다.
ERR_NAPI_INVALID_TYPEDARRAY_LENGTH
napi_create_typedarray()
를 호출하는 동안 (length * size_of_element) + byte_offset
이 주어진 buffer
의 길이보다 컸습니다.
ERR_NAPI_TSFN_CALL_JS
스레드 안전 함수의 JavaScript 부분을 호출하는 동안 오류가 발생했습니다.
ERR_NAPI_TSFN_GET_UNDEFINED
JavaScript undefined
값을 검색하는 동안 오류가 발생했습니다.
ERR_NON_CONTEXT_AWARE_DISABLED
컨텍스트를 인식하지 못하는 네이티브 애드온이 컨텍스트를 허용하지 않는 프로세스에서 로드되었습니다.
ERR_NOT_BUILDING_SNAPSHOT
Node.js가 V8 시작 스냅샷을 빌드하지 않는데도 V8 시작 스냅샷을 빌드할 때만 사용할 수 있는 작업을 사용하려고 시도했습니다.
ERR_NOT_IN_SINGLE_EXECUTABLE_APPLICATION
추가된 버전: v21.7.0, v20.12.0
단일 실행 파일 애플리케이션이 아닌 경우 작업을 수행할 수 없습니다.
ERR_NOT_SUPPORTED_IN_SNAPSHOT
시작 스냅샷을 빌드할 때 지원되지 않는 작업을 수행하려고 시도했습니다.
ERR_NO_CRYPTO
Node.js가 OpenSSL 암호화 지원으로 컴파일되지 않았는데도 암호화 기능을 사용하려고 시도했습니다.
ERR_NO_ICU
ICU를 필요로 하는 기능을 사용하려고 시도했지만 Node.js가 ICU 지원으로 컴파일되지 않았습니다.
ERR_NO_TYPESCRIPT
추가됨: v23.0.0
네이티브 TypeScript 지원을 필요로 하는 기능을 사용하려고 시도했지만 Node.js가 TypeScript 지원으로 컴파일되지 않았습니다.
ERR_OPERATION_FAILED
추가됨: v15.0.0
작업이 실패했습니다. 일반적으로 비동기 작업의 일반적인 실패를 알리는 데 사용됩니다.
ERR_OUT_OF_RANGE
주어진 값이 허용된 범위를 벗어났습니다.
ERR_PACKAGE_IMPORT_NOT_DEFINED
package.json
"imports"
필드에 주어진 내부 패키지 지정자 매핑이 정의되어 있지 않습니다.
ERR_PACKAGE_PATH_NOT_EXPORTED
package.json
"exports"
필드에 요청된 하위 경로가 내보내지지 않았습니다. 내보내기는 캡슐화되어 있기 때문에 절대 URL을 사용하지 않는 한 내보내지지 않은 개인 내부 모듈은 패키지 분석을 통해 가져올 수 없습니다.
ERR_PARSE_ARGS_INVALID_OPTION_VALUE
추가됨: v18.3.0, v16.17.0
strict
가 true
로 설정된 경우, <문자열> 유형의 옵션에 대해 <부울> 값이 제공되거나, <부울> 유형의 옵션에 대해 <문자열> 값이 제공되는 경우 util.parseArgs()
에 의해 발생합니다.
ERR_PARSE_ARGS_UNEXPECTED_POSITIONAL
추가됨: v18.3.0, v16.17.0
위치 인수가 제공되고 allowPositionals
가 false
로 설정된 경우 util.parseArgs()
에 의해 발생합니다.
ERR_PARSE_ARGS_UNKNOWN_OPTION
추가됨: v18.3.0, v16.17.0
strict
가 true
로 설정된 경우, options
에 인수가 구성되지 않은 경우 util.parseArgs()
에 의해 발생합니다.
ERR_PERFORMANCE_INVALID_TIMESTAMP
유효하지 않은 타임스탬프 값이 성능 마크 또는 측정에 제공되었습니다.
ERR_PERFORMANCE_MEASURE_INVALID_OPTIONS
유효하지 않은 옵션이 성능 측정에 제공되었습니다.
ERR_PROTO_ACCESS
Object.prototype.__proto__
에 접근하는 것은 --disable-proto=throw
를 사용하여 금지되었습니다. Object.getPrototypeOf
및 Object.setPrototypeOf
는 객체의 프로토타입을 가져오고 설정하는 데 사용해야 합니다.
ERR_QUIC_APPLICATION_ERROR
추가된 버전: v23.4.0
QUIC 애플리케이션 오류가 발생했습니다.
ERR_QUIC_CONNECTION_FAILED
추가된 버전: v23.0.0
QUIC 연결 설정에 실패했습니다.
ERR_QUIC_ENDPOINT_CLOSED
추가된 버전: v23.0.0
QUIC 엔드포인트가 오류와 함께 종료되었습니다.
ERR_QUIC_OPEN_STREAM_FAILED
추가된 버전: v23.0.0
QUIC 스트림 열기에 실패했습니다.
ERR_QUIC_TRANSPORT_ERROR
추가된 버전: v23.4.0
QUIC 전송 오류가 발생했습니다.
ERR_QUIC_VERSION_NEGOTIATION_ERROR
추가된 버전: v23.4.0
버전 협상이 필요하기 때문에 QUIC 세션에 실패했습니다.
ERR_REQUIRE_ASYNC_MODULE
ES Module을 require()
하려고 할 때, 해당 모듈이 비동기인 것으로 밝혀졌습니다. 즉, 최상위 await를 포함합니다.
최상위 await가 어디에 있는지 확인하려면 --experimental-print-required-tla
를 사용하십시오 (최상위 await를 찾기 전에 모듈을 실행합니다).
ERR_REQUIRE_CYCLE_MODULE
ES Module을 require()
하려고 할 때, CommonJS에서 ESM으로 또는 ESM에서 CommonJS로의 엣지가 즉각적인 순환에 참여합니다. ES 모듈은 이미 평가 중인 동안에는 평가할 수 없으므로 이는 허용되지 않습니다.
순환을 피하려면 순환에 관련된 require()
호출이 ES 모듈 (via createRequire()
) 또는 CommonJS 모듈의 최상위에서 발생하지 않아야 하며 내부 함수에서 지연적으로 수행되어야 합니다.
ERR_REQUIRE_ESM
[History]
Version | Changes |
---|---|
v23.0.0 | require()는 이제 기본적으로 동기 ES 모듈 로드를 지원합니다. |
ES Module을 require()
하려는 시도가 있었습니다.
require()
가 이제 동기 ES 모듈 로드를 지원하므로 이 오류는 더 이상 사용되지 않습니다. require()
가 최상위 await
를 포함하는 ES 모듈을 발견하면 대신 ERR_REQUIRE_ASYNC_MODULE
을 발생시킵니다.
ERR_SCRIPT_EXECUTION_INTERRUPTED
스크립트 실행이 SIGINT
에 의해 중단되었습니다. (예: + 키를 누름)
ERR_SCRIPT_EXECUTION_TIMEOUT
스크립트 실행 시간이 초과되었습니다. 실행 중인 스크립트에 버그가 있을 수 있습니다.
ERR_SERVER_ALREADY_LISTEN
net.Server
가 이미 수신 중인 동안 server.listen()
메서드가 호출되었습니다. 이는 HTTP, HTTPS 및 HTTP/2 Server
인스턴스를 포함한 net.Server
의 모든 인스턴스에 적용됩니다.
ERR_SERVER_NOT_RUNNING
net.Server
가 실행되고 있지 않을 때 server.close()
메서드가 호출되었습니다. 이는 HTTP, HTTPS 및 HTTP/2 Server
인스턴스를 포함한 모든 net.Server
인스턴스에 적용됩니다.
ERR_SINGLE_EXECUTABLE_APPLICATION_ASSET_NOT_FOUND
다음 버전부터 추가됨: v21.7.0, v20.12.0
단일 실행 파일 애플리케이션 API에 자산을 식별하기 위한 키가 전달되었지만 일치하는 항목을 찾을 수 없습니다.
ERR_SOCKET_ALREADY_BOUND
이미 바인딩된 소켓을 바인딩하려는 시도가 있었습니다.
ERR_SOCKET_BAD_BUFFER_SIZE
dgram.createSocket()
에서 recvBufferSize
또는 sendBufferSize
옵션에 유효하지 않은 (음수) 크기가 전달되었습니다.
ERR_SOCKET_BAD_PORT
>= 0 및 < 65536 포트를 예상하는 API 함수가 유효하지 않은 값을 받았습니다.
ERR_SOCKET_BAD_TYPE
소켓 유형(udp4
또는 udp6
)을 예상하는 API 함수가 유효하지 않은 값을 받았습니다.
ERR_SOCKET_BUFFER_SIZE
dgram.createSocket()
를 사용하는 동안 수신 또는 송신 Buffer
의 크기를 확인할 수 없습니다.
ERR_SOCKET_CLOSED
이미 닫힌 소켓에서 작업을 시도했습니다.
ERR_SOCKET_CLOSED_BEFORE_CONNECTION
연결 중인 소켓에서 net.Socket.write()
를 호출하고 연결이 설정되기 전에 소켓이 닫혔습니다.
ERR_SOCKET_CONNECTION_TIMEOUT
소켓이 패밀리 자동 선택 알고리즘을 사용할 때 허용된 시간 초과 내에 DNS에서 반환된 주소에 연결할 수 없습니다.
ERR_SOCKET_DGRAM_IS_CONNECTED
이미 연결된 소켓에서 dgram.connect()
호출이 이루어졌습니다.
ERR_SOCKET_DGRAM_NOT_CONNECTED
연결이 끊긴 소켓에서 dgram.disconnect()
또는 dgram.remoteAddress()
호출이 이루어졌습니다.
ERR_SOCKET_DGRAM_NOT_RUNNING
호출이 이루어졌지만 UDP 서브시스템이 실행되고 있지 않습니다.
ERR_SOURCE_MAP_CORRUPT
소스 맵이 존재하지 않거나 손상되어 구문 분석할 수 없습니다.
ERR_SOURCE_MAP_MISSING_SOURCE
소스 맵에서 가져온 파일을 찾을 수 없습니다.
ERR_SQLITE_ERROR
추가된 버전: v22.5.0
SQLite에서 오류가 반환되었습니다.
ERR_SRI_PARSE
Subresource Integrity 검사를 위해 문자열이 제공되었지만 구문 분석할 수 없었습니다. Subresource Integrity 사양을 참조하여 integrity 속성의 형식을 확인하십시오.
ERR_STREAM_ALREADY_FINISHED
스트림이 완료되었기 때문에 완료할 수 없는 스트림 메서드가 호출되었습니다.
ERR_STREAM_CANNOT_PIPE
Writable
스트림에서 stream.pipe()
를 호출하려고 시도했습니다.
ERR_STREAM_DESTROYED
stream.destroy()
를 사용하여 스트림이 파괴되었기 때문에 완료할 수 없는 스트림 메서드가 호출되었습니다.
ERR_STREAM_NULL_VALUES
null
청크로 stream.write()
를 호출하려고 시도했습니다.
ERR_STREAM_PREMATURE_CLOSE
스트림 또는 파이프라인이 명시적인 오류 없이 정상적으로 종료되지 않을 때 stream.finished()
및 stream.pipeline()
에서 반환되는 오류입니다.
ERR_STREAM_PUSH_AFTER_EOF
스트림에 null
(EOF)이 푸시된 후 stream.push()
를 호출하려고 시도했습니다.
ERR_STREAM_UNABLE_TO_PIPE
파이프라인에서 닫히거나 파괴된 스트림으로 파이프하려고 시도했습니다.
ERR_STREAM_UNSHIFT_AFTER_END_EVENT
'end'
이벤트가 발생한 후 stream.unshift()
를 호출하려고 시도했습니다.
ERR_STREAM_WRAP
Socket에 문자열 디코더가 설정되었거나 디코더가 objectMode
에 있는 경우 중단을 방지합니다.
const Socket = require('node:net').Socket;
const instance = new Socket();
instance.setEncoding('utf8');
ERR_STREAM_WRITE_AFTER_END
stream.end()
가 호출된 후 stream.write()
를 호출하려는 시도가 있었습니다.
ERR_STRING_TOO_LONG
허용된 최대 길이보다 긴 문자열을 생성하려는 시도가 있었습니다.
ERR_SYNTHETIC
진단 보고서를 위해 호출 스택을 캡처하는 데 사용되는 인공 오류 객체입니다.
ERR_SYSTEM_ERROR
Node.js 프로세스 내에서 지정되지 않았거나 구체적이지 않은 시스템 오류가 발생했습니다. 오류 객체에는 추가 정보가 포함된 err.info
객체 속성이 있습니다.
ERR_TAP_LEXER_ERROR
실패한 렉서 상태를 나타내는 오류입니다.
ERR_TAP_PARSER_ERROR
실패한 파서 상태를 나타내는 오류입니다. 오류를 유발한 토큰에 대한 추가 정보는 cause
속성을 통해 사용할 수 있습니다.
ERR_TAP_VALIDATION_ERROR
이 오류는 실패한 TAP 유효성 검사를 나타냅니다.
ERR_TEST_FAILURE
이 오류는 실패한 테스트를 나타냅니다. 실패에 대한 추가 정보는 cause
속성을 통해 사용할 수 있습니다. failureType
속성은 실패가 발생했을 때 테스트가 무엇을 하고 있었는지 지정합니다.
ERR_TLS_ALPN_CALLBACK_INVALID_RESULT
이 오류는 ALPNCallback
이 클라이언트가 제공한 ALPN 프로토콜 목록에 없는 값을 반환할 때 발생합니다.
ERR_TLS_ALPN_CALLBACK_WITH_PROTOCOLS
이 오류는 TLS 옵션에 ALPNProtocols
와 ALPNCallback
이 모두 포함된 경우 TLSServer
를 생성할 때 발생합니다. 이러한 옵션은 상호 배타적입니다.
ERR_TLS_CERT_ALTNAME_FORMAT
이 오류는 사용자 제공 subjectaltname
속성이 인코딩 규칙을 위반하는 경우 checkServerIdentity
에 의해 발생합니다. Node.js 자체에서 생성된 인증서 객체는 항상 인코딩 규칙을 준수하므로 이 오류가 발생하지 않습니다.
ERR_TLS_CERT_ALTNAME_INVALID
TLS를 사용하는 동안 피어의 호스트 이름/IP가 인증서의 subjectAltNames
와 일치하지 않았습니다.
ERR_TLS_DH_PARAM_SIZE
TLS를 사용하는 동안 Diffie-Hellman(DH
) 키 합의 프로토콜에 제공된 매개변수가 너무 작습니다. 기본적으로 키 길이는 취약점을 방지하기 위해 1024비트 이상이어야 하지만 더 강력한 보안을 위해 2048비트 이상을 사용하는 것이 좋습니다.
ERR_TLS_HANDSHAKE_TIMEOUT
TLS/SSL 핸드셰이크 시간이 초과되었습니다. 이 경우 서버도 연결을 중단해야 합니다.
ERR_TLS_INVALID_CONTEXT
Added in: v13.3.0
컨텍스트는 SecureContext
여야 합니다.
ERR_TLS_INVALID_PROTOCOL_METHOD
지정된 secureProtocol
메서드가 유효하지 않습니다. 알 수 없거나 보안에 취약하여 비활성화되었습니다.
ERR_TLS_INVALID_PROTOCOL_VERSION
유효한 TLS 프로토콜 버전은 'TLSv1'
, 'TLSv1.1'
, 또는 'TLSv1.2'
입니다.
ERR_TLS_INVALID_STATE
Added in: v13.10.0, v12.17.0
TLS 소켓이 연결되어 보안이 설정되어야 합니다. 계속하기 전에 'secure' 이벤트가 발생하는지 확인하십시오.
ERR_TLS_PROTOCOL_VERSION_CONFLICT
TLS 프로토콜 minVersion
또는 maxVersion
을 설정하려는 시도가 secureProtocol
을 명시적으로 설정하려는 시도와 충돌합니다. 하나의 메커니즘만 사용하십시오.
ERR_TLS_PSK_SET_IDENTITY_HINT_FAILED
PSK ID 힌트 설정에 실패했습니다. 힌트가 너무 길 수 있습니다.
ERR_TLS_RENEGOTIATION_DISABLED
재협상이 비활성화된 소켓 인스턴스에서 TLS를 재협상하려는 시도가 있었습니다.
ERR_TLS_REQUIRED_SERVER_NAME
TLS를 사용하는 동안 server.addContext()
메서드가 첫 번째 매개변수에 호스트 이름을 제공하지 않고 호출되었습니다.
ERR_TLS_SESSION_ATTACK
과도한 양의 TLS 재협상이 감지되었으며, 이는 서비스 거부 공격의 잠재적인 벡터입니다.
ERR_TLS_SNI_FROM_SERVER
TLS 서버 측 소켓에서 서버 이름 표시를 발행하려는 시도가 있었습니다. 이는 클라이언트에서만 유효합니다.
ERR_TRACE_EVENTS_CATEGORY_REQUIRED
trace_events.createTracing()
메서드에는 하나 이상의 추적 이벤트 범주가 필요합니다.
ERR_TRACE_EVENTS_UNAVAILABLE
Node.js가 --without-v8-platform
플래그로 컴파일되었기 때문에 node:trace_events
모듈을 로드할 수 없습니다.
ERR_TRANSFORM_ALREADY_TRANSFORMING
Transform
스트림이 변환 중인 동안 완료되었습니다.
ERR_TRANSFORM_WITH_LENGTH_0
Transform
스트림이 쓰기 버퍼에 데이터가 남아 있는 상태로 완료되었습니다.
ERR_TTY_INIT_FAILED
시스템 오류로 인해 TTY 초기화에 실패했습니다.
ERR_UNAVAILABLE_DURING_EXIT
process.on('exit')
핸들러 내에서 호출되어서는 안 되는 함수가 process.on('exit')
핸들러 내에서 호출되었습니다.
ERR_UNCAUGHT_EXCEPTION_CAPTURE_ALREADY_SET
process.setUncaughtExceptionCaptureCallback()
이 콜백을 먼저 null
로 재설정하지 않고 두 번 호출되었습니다.
이 오류는 다른 모듈에서 등록된 콜백을 실수로 덮어쓰는 것을 방지하기 위해 설계되었습니다.
ERR_UNESCAPED_CHARACTERS
이스케이프되지 않은 문자가 포함된 문자열이 수신되었습니다.
ERR_UNHANDLED_ERROR
처리되지 않은 오류가 발생했습니다 (예: EventEmitter
에서 'error'
이벤트가 발생했지만 'error'
핸들러가 등록되지 않은 경우).
ERR_UNKNOWN_BUILTIN_MODULE
일반적으로 사용자 코드로 인해 트리거되어서는 안 되는 특정 종류의 내부 Node.js 오류를 식별하는 데 사용됩니다. 이 오류의 인스턴스는 Node.js 바이너리 자체 내의 내부 버그를 가리킵니다.
ERR_UNKNOWN_CREDENTIAL
존재하지 않는 Unix 그룹 또는 사용자 식별자가 전달되었습니다.
ERR_UNKNOWN_ENCODING
API에 잘못되었거나 알 수 없는 인코딩 옵션이 전달되었습니다.
ERR_UNKNOWN_FILE_EXTENSION
알 수 없거나 지원되지 않는 파일 확장명을 가진 모듈을 로드하려고 했습니다.
ERR_UNKNOWN_MODULE_FORMAT
알 수 없거나 지원되지 않는 형식을 가진 모듈을 로드하려고 했습니다.
ERR_UNKNOWN_SIGNAL
유효한 신호를 기대하는 API (예: subprocess.kill()
)에 잘못되었거나 알 수 없는 프로세스 신호가 전달되었습니다.
ERR_UNSUPPORTED_DIR_IMPORT
디렉터리 URL을 import
하는 것은 지원되지 않습니다. 대신, 이름을 사용하여 패키지를 자체 참조하고 package.json
파일의 "exports"
필드에서 사용자 정의 하위 경로를 정의하세요.
import './'; // 지원되지 않음
import './index.js'; // 지원됨
import 'package-name'; // 지원됨
ERR_UNSUPPORTED_ESM_URL_SCHEME
file
및 data
이외의 URL 체계를 사용하는 import
는 지원되지 않습니다.
ERR_UNSUPPORTED_NODE_MODULES_TYPE_STRIPPING
추가됨: v22.6.0
타입 제거는 node_modules
디렉터리의 하위 파일에 대해 지원되지 않습니다.
ERR_UNSUPPORTED_RESOLVE_REQUEST
잘못된 모듈 참조자를 확인하려는 시도가 있었습니다. 이는 다음 중 하나를 사용하여 import
하거나 import.meta.resolve()
를 호출할 때 발생할 수 있습니다.
try {
// `data:` URL 모듈에서 'bare-specifier' 패키지를 import하려고 합니다.
await import('data:text/javascript,import "bare-specifier"');
} catch (e) {
console.log(e.code); // ERR_UNSUPPORTED_RESOLVE_REQUEST
}
ERR_USE_AFTER_CLOSE
이미 닫힌 것을 사용하려는 시도가 있었습니다.
ERR_VALID_PERFORMANCE_ENTRY_TYPE
Performance Timing API(perf_hooks
)를 사용하는 동안 유효한 성능 항목 유형이 발견되지 않았습니다.
ERR_VM_DYNAMIC_IMPORT_CALLBACK_MISSING
동적 import 콜백이 지정되지 않았습니다.
ERR_VM_DYNAMIC_IMPORT_CALLBACK_MISSING_FLAG
--experimental-vm-modules
없이 동적 import 콜백이 호출되었습니다.
ERR_VM_MODULE_ALREADY_LINKED
연결하려는 모듈이 다음 이유 중 하나로 인해 연결할 수 없습니다.
- 이미 연결되었습니다 (
linkingStatus
가'linked'
임). - 연결 중입니다 (
linkingStatus
가'linking'
임). - 이 모듈에 대한 연결이 실패했습니다 (
linkingStatus
가'errored'
임).
ERR_VM_MODULE_CACHED_DATA_REJECTED
모듈 생성자에 전달된 cachedData
옵션이 유효하지 않습니다.
ERR_VM_MODULE_CANNOT_CREATE_CACHED_DATA
이미 평가된 모듈에 대해서는 캐시된 데이터를 생성할 수 없습니다.
ERR_VM_MODULE_DIFFERENT_CONTEXT
링커 함수에서 반환되는 모듈이 부모 모듈과 다른 컨텍스트에 있습니다. 연결된 모듈은 동일한 컨텍스트를 공유해야 합니다.
ERR_VM_MODULE_LINK_FAILURE
오류로 인해 모듈을 연결할 수 없습니다.
ERR_VM_MODULE_NOT_MODULE
연결 약속의 이행된 값이 vm.Module
객체가 아닙니다.
ERR_VM_MODULE_STATUS
현재 모듈의 상태가 이 작업을 허용하지 않습니다. 오류의 특정 의미는 특정 함수에 따라 다릅니다.
ERR_WASI_ALREADY_STARTED
WASI 인스턴스가 이미 시작되었습니다.
ERR_WASI_NOT_STARTED
WASI 인스턴스가 아직 시작되지 않았습니다.
ERR_WEBASSEMBLY_RESPONSE
추가됨: v18.1.0
WebAssembly.compileStreaming
또는 WebAssembly.instantiateStreaming
에 전달된 Response
가 유효한 WebAssembly 응답이 아닙니다.
ERR_WORKER_INIT_FAILED
Worker
초기화에 실패했습니다.
ERR_WORKER_INVALID_EXEC_ARGV
Worker
생성자에 전달된 execArgv
옵션에 유효하지 않은 플래그가 포함되어 있습니다.
ERR_WORKER_MESSAGING_ERRORED
추가됨: v22.5.0
대상 스레드가 postMessageToThread()
를 통해 전송된 메시지를 처리하는 동안 오류를 발생시켰습니다.
ERR_WORKER_MESSAGING_FAILED
Added in: v22.5.0
[Stable: 1 - Experimental]
Stable: 1 Stability: 1.1 - 활발한 개발 중
postMessageToThread()
에서 요청된 스레드가 유효하지 않거나 workerMessage
리스너가 없습니다.
ERR_WORKER_MESSAGING_SAME_THREAD
Added in: v22.5.0
[Stable: 1 - Experimental]
Stable: 1 Stability: 1.1 - 활발한 개발 중
postMessageToThread()
에서 요청된 스레드 ID가 현재 스레드 ID입니다.
ERR_WORKER_MESSAGING_TIMEOUT
Added in: v22.5.0
[Stable: 1 - Experimental]
Stable: 1 Stability: 1.1 - 활발한 개발 중
postMessageToThread()
를 통해 메시지를 보내는 데 시간이 초과되었습니다.
ERR_WORKER_NOT_RUNNING
Worker
인스턴스가 현재 실행 중이 아니기 때문에 작업이 실패했습니다.
ERR_WORKER_OUT_OF_MEMORY
Worker
인스턴스가 메모리 제한에 도달하여 종료되었습니다.
ERR_WORKER_PATH
워커의 메인 스크립트 경로는 절대 경로도 아니고 ./
또는 ../
로 시작하는 상대 경로도 아닙니다.
ERR_WORKER_UNSERIALIZABLE_ERROR
워커 스레드에서 잡히지 않은 예외를 직렬화하려는 모든 시도가 실패했습니다.
ERR_WORKER_UNSUPPORTED_OPERATION
요청된 기능은 워커 스레드에서 지원되지 않습니다.
ERR_ZLIB_INITIALIZATION_FAILED
잘못된 구성으로 인해 zlib
객체 생성이 실패했습니다.
HPE_CHUNK_EXTENSIONS_OVERFLOW
Added in: v21.6.2, v20.11.1, v18.19.1
청크 확장자에 너무 많은 데이터가 수신되었습니다. 악성 또는 잘못 구성된 클라이언트를 보호하기 위해 16 KiB 이상의 데이터가 수신되면 이 코드가 포함된 Error
가 발생합니다.
HPE_HEADER_OVERFLOW
[기록]
버전 | 변경 사항 |
---|---|
v11.4.0, v10.15.0 | http_parser 의 최대 헤더 크기가 8KiB로 설정되었습니다. |
너무 많은 HTTP 헤더 데이터가 수신되었습니다. 악성 클라이언트 또는 잘못 구성된 클라이언트로부터 보호하기 위해 maxHeaderSize
보다 많은 HTTP 헤더 데이터가 수신되면 요청 또는 응답 객체를 생성하지 않고 HTTP 파싱이 중단되고 이 코드가 있는 Error
가 발생합니다.
HPE_UNEXPECTED_CONTENT_LENGTH
서버가 Content-Length
헤더와 Transfer-Encoding: chunked
를 모두 전송하고 있습니다.
Transfer-Encoding: chunked
를 사용하면 서버가 동적으로 생성된 콘텐츠에 대해 HTTP 영구 연결을 유지할 수 있습니다. 이 경우 Content-Length
HTTP 헤더를 사용할 수 없습니다.
Content-Length
또는 Transfer-Encoding: chunked
를 사용하세요.
MODULE_NOT_FOUND
[기록]
버전 | 변경 사항 |
---|---|
v12.0.0 | requireStack 속성이 추가되었습니다. |
require()
작업 또는 프로그램 진입점을 로드하는 동안 CommonJS 모듈 로더가 모듈 파일을 확인할 수 없습니다.
레거시 Node.js 오류 코드
ERR_CANNOT_TRANSFER_OBJECT
추가된 버전: v10.5.0
제거된 버전: v12.5.0
postMessage()
에 전달된 값에 전송을 지원하지 않는 객체가 포함되어 있습니다.
ERR_CPU_USAGE
제거된 버전: v15.0.0
process.cpuUsage
의 네이티브 호출을 처리할 수 없습니다.
ERR_CRYPTO_HASH_DIGEST_NO_UTF16
추가된 버전: v9.0.0
제거된 버전: v12.12.0
UTF-16 인코딩이 hash.digest()
와 함께 사용되었습니다. hash.digest()
메서드는 encoding
인수를 전달하여 메서드가 Buffer
대신 문자열을 반환하도록 할 수 있지만 UTF-16 인코딩(예: ucs
또는 utf16le
)은 지원되지 않습니다.
ERR_CRYPTO_SCRYPT_INVALID_PARAMETER
제거됨: v23.0.0
호환되지 않는 옵션 조합이 crypto.scrypt()
또는 crypto.scryptSync()
에 전달되었습니다. Node.js의 새 버전에서는 다른 API와 일관성을 유지하기 위해 오류 코드 ERR_INCOMPATIBLE_OPTION_PAIR
를 대신 사용합니다.
ERR_FS_INVALID_SYMLINK_TYPE
제거됨: v23.0.0
유효하지 않은 심볼릭 링크 유형이 fs.symlink()
또는 fs.symlinkSync()
메서드에 전달되었습니다.
ERR_HTTP2_FRAME_ERROR
추가됨: v9.0.0
제거됨: v10.0.0
HTTP/2 세션에서 개별 프레임을 보내는 데 실패했을 때 사용됩니다.
ERR_HTTP2_HEADERS_OBJECT
추가됨: v9.0.0
제거됨: v10.0.0
HTTP/2 헤더 객체가 필요한 경우 사용됩니다.
ERR_HTTP2_HEADER_REQUIRED
추가됨: v9.0.0
제거됨: v10.0.0
필수 헤더가 HTTP/2 메시지에 없는 경우 사용됩니다.
ERR_HTTP2_INFO_HEADERS_AFTER_RESPOND
추가됨: v9.0.0
제거됨: v10.0.0
HTTP/2 정보 헤더는 Http2Stream.prototype.respond()
메서드를 호출하기 전에만 보내야 합니다.
ERR_HTTP2_STREAM_CLOSED
추가됨: v9.0.0
제거됨: v10.0.0
이미 닫힌 HTTP/2 스트림에서 작업이 수행된 경우 사용됩니다.
ERR_HTTP_INVALID_CHAR
추가됨: v9.0.0
제거됨: v10.0.0
HTTP 응답 상태 메시지(이유 구절)에서 유효하지 않은 문자가 발견된 경우 사용됩니다.
ERR_IMPORT_ASSERTION_TYPE_FAILED
추가됨: v17.1.0, v16.14.0
제거됨: v21.1.0
가져오기 어설션이 실패하여 지정된 모듈을 가져올 수 없습니다.
ERR_IMPORT_ASSERTION_TYPE_MISSING
추가됨: v17.1.0, v16.14.0
제거됨: v21.1.0
가져오기 어설션이 누락되어 지정된 모듈을 가져올 수 없습니다.
ERR_IMPORT_ASSERTION_TYPE_UNSUPPORTED
Added in: v17.1.0, v16.14.0
Removed in: v21.1.0
가져오기 어설션이 이 Node.js 버전에서 지원되지 않습니다.
ERR_INDEX_OUT_OF_RANGE
Added in: v10.0.0
Removed in: v11.0.0
주어진 인덱스가 허용된 범위를 벗어났습니다 (예: 음수 오프셋).
ERR_INVALID_OPT_VALUE
Added in: v8.0.0
Removed in: v15.0.0
옵션 객체에 유효하지 않거나 예상치 못한 값이 전달되었습니다.
ERR_INVALID_OPT_VALUE_ENCODING
Added in: v9.0.0
Removed in: v15.0.0
유효하지 않거나 알 수 없는 파일 인코딩이 전달되었습니다.
ERR_INVALID_PERFORMANCE_MARK
Added in: v8.5.0
Removed in: v16.7.0
Performance Timing API(perf_hooks
)를 사용하는 동안 성능 마크가 유효하지 않습니다.
ERR_INVALID_TRANSFER_OBJECT
[기록]
버전 | 변경 사항 |
---|---|
v21.0.0 | DOMException 이 대신 발생합니다. |
v21.0.0 | Removed in: v21.0.0 |
유효하지 않은 전송 객체가 postMessage()
에 전달되었습니다.
ERR_MANIFEST_ASSERT_INTEGRITY
Removed in: v22.2.0
리소스 로드를 시도했지만 리소스가 정책 매니페스트에 정의된 무결성과 일치하지 않았습니다. 자세한 내용은 정책 매니페스트 문서를 참조하십시오.
ERR_MANIFEST_DEPENDENCY_MISSING
Removed in: v22.2.0
리소스 로드를 시도했지만 리소스가 로드를 시도한 위치에서 종속성으로 나열되지 않았습니다. 자세한 내용은 정책 매니페스트 문서를 참조하십시오.
ERR_MANIFEST_INTEGRITY_MISMATCH
Removed in: v22.2.0
정책 매니페스트 로드를 시도했지만 매니페스트에 서로 일치하지 않는 리소스에 대한 여러 항목이 있었습니다. 이 오류를 해결하려면 매니페스트 항목이 일치하도록 업데이트하십시오. 자세한 내용은 정책 매니페스트 문서를 참조하십시오.
ERR_MANIFEST_INVALID_RESOURCE_FIELD
Removed in: v22.2.0
정책 매니페스트 리소스에 해당 필드 중 하나에 대한 유효하지 않은 값이 있었습니다. 이 오류를 해결하려면 매니페스트 항목이 일치하도록 업데이트하십시오. 자세한 내용은 정책 매니페스트 문서를 참조하십시오.
ERR_MANIFEST_INVALID_SPECIFIER
제거됨: v22.2.0
정책 매니페스트 리소스에 해당 종속성 매핑에 대한 유효하지 않은 값이 있습니다. 이 오류를 해결하려면 매니페스트 항목을 일치하도록 업데이트하십시오. 자세한 내용은 정책 매니페스트 설명서를 참조하십시오.
ERR_MANIFEST_PARSE_POLICY
제거됨: v22.2.0
정책 매니페스트를 로드하려고 시도했지만 매니페스트를 구문 분석할 수 없습니다. 자세한 내용은 정책 매니페스트 설명서를 참조하십시오.
ERR_MANIFEST_TDZ
제거됨: v22.2.0
정책 매니페스트에서 읽기를 시도했지만 매니페스트 초기화가 아직 수행되지 않았습니다. 이는 Node.js의 버그일 가능성이 높습니다.
ERR_MANIFEST_UNKNOWN_ONERROR
제거됨: v22.2.0
정책 매니페스트가 로드되었지만 해당 "onerror" 동작에 대한 알 수 없는 값이 있습니다. 자세한 내용은 정책 매니페스트 설명서를 참조하십시오.
ERR_MISSING_MESSAGE_PORT_IN_TRANSFER_LIST
제거됨: v15.0.0
이 오류 코드는 Node.js v15.0.0에서 ERR_MISSING_TRANSFERABLE_IN_TRANSFER_LIST
로 대체되었습니다. 그 이유는 다른 유형의 전송 가능한 객체도 이제 존재하므로 더 이상 정확하지 않기 때문입니다.
ERR_MISSING_TRANSFERABLE_IN_TRANSFER_LIST
[History]
Version | Changes |
---|---|
v21.0.0 | DOMException 이 대신 발생합니다. |
v21.0.0 | 제거됨: v21.0.0 |
v15.0.0 | 추가됨: v15.0.0 |
transferList
인수에 명시적으로 나열해야 하는 객체가 postMessage()
호출에 전달된 객체에 있지만 해당 호출의 transferList
에 제공되지 않습니다. 일반적으로 이는 MessagePort
입니다.
v15.0.0 이전의 Node.js 버전에서 여기서 사용되는 오류 코드는 ERR_MISSING_MESSAGE_PORT_IN_TRANSFER_LIST
였습니다. 그러나 전송 가능한 객체 유형 세트가 확장되어 MessagePort
보다 더 많은 유형을 포괄합니다.
ERR_NAPI_CONS_PROTOTYPE_OBJECT
추가됨: v9.0.0
제거됨: v10.0.0
Constructor.prototype
이 객체가 아닐 때 Node-API
에서 사용됩니다.
ERR_NAPI_TSFN_START_IDLE_LOOP
Added in: v10.6.0, v8.16.0
Removed in: v14.2.0, v12.17.0
메인 스레드에서 스레드 안전 함수와 관련된 큐에서 유휴 루프를 통해 값이 제거됩니다. 이 오류는 루프 시작을 시도할 때 오류가 발생했음을 나타냅니다.
ERR_NAPI_TSFN_STOP_IDLE_LOOP
Added in: v10.6.0, v8.16.0
Removed in: v14.2.0, v12.17.0
큐에 더 이상 항목이 남아 있지 않으면 유휴 루프를 일시 중단해야 합니다. 이 오류는 유휴 루프가 중지되지 않았음을 나타냅니다.
ERR_NO_LONGER_SUPPORTED
Buffer.write(string, encoding, offset[, length])
와 같이 지원되지 않는 방식으로 Node.js API가 호출되었습니다.
ERR_OUTOFMEMORY
Added in: v9.0.0
Removed in: v10.0.0
작업으로 인해 메모리 부족 상태가 발생했음을 일반적으로 식별하는 데 사용됩니다.
ERR_PARSE_HISTORY_DATA
Added in: v9.0.0
Removed in: v10.0.0
node:repl
모듈이 REPL 기록 파일에서 데이터를 파싱할 수 없습니다.
ERR_SOCKET_CANNOT_SEND
Added in: v9.0.0
Removed in: v14.0.0
소켓에서 데이터를 보낼 수 없습니다.
ERR_STDERR_CLOSE
[History]
Version | Changes |
---|---|
v10.12.0 | 오류를 발생시키는 대신 process.stderr.end() 는 이제 스트림 측만 닫고 기본 리소스는 닫지 않아 이 오류가 불필요해졌습니다. |
v10.12.0 | Removed in: v10.12.0 |
process.stderr
스트림을 닫으려고 시도했습니다. 설계상 Node.js는 사용자 코드가 stdout
또는 stderr
스트림을 닫는 것을 허용하지 않습니다.
ERR_STDOUT_CLOSE
[History]
Version | Changes |
---|---|
v10.12.0 | 오류를 발생시키는 대신 process.stderr.end() 는 이제 스트림 측만 닫고 기본 리소스는 닫지 않아 이 오류가 불필요해졌습니다. |
v10.12.0 | Removed in: v10.12.0 |
process.stdout
스트림을 닫으려고 시도했습니다. 설계상 Node.js는 사용자 코드가 stdout
또는 stderr
스트림을 닫는 것을 허용하지 않습니다.
ERR_STREAM_READ_NOT_IMPLEMENTED
Added in: v9.0.0
Removed in: v10.0.0
readable._read()
를 구현하지 않은 읽기 가능한 스트림을 사용하려고 시도할 때 사용됩니다.
ERR_TLS_RENEGOTIATION_FAILED
추가된 버전: v9.0.0
제거된 버전: v10.0.0
TLS 재협상 요청이 특정되지 않은 방식으로 실패했을 때 사용됩니다.
ERR_TRANSFERRING_EXTERNALIZED_SHAREDARRAYBUFFER
추가된 버전: v10.5.0
제거된 버전: v14.0.0
JavaScript 엔진이나 Node.js에서 관리하지 않는 메모리를 가진 SharedArrayBuffer
가 직렬화 중에 발견되었습니다. 이러한 SharedArrayBuffer
는 직렬화할 수 없습니다.
이것은 네이티브 애드온이 "externalized" 모드에서 SharedArrayBuffer
를 만들거나 기존 SharedArrayBuffer
를 externalized 모드로 전환할 때만 발생할 수 있습니다.
ERR_UNKNOWN_STDIN_TYPE
추가된 버전: v8.0.0
제거된 버전: v11.7.0
알 수 없는 stdin
파일 유형으로 Node.js 프로세스를 시작하려고 시도했습니다. 이 오류는 일반적으로 Node.js 자체 내의 버그를 나타내지만 사용자 코드가 트리거할 수도 있습니다.
ERR_UNKNOWN_STREAM_TYPE
추가된 버전: v8.0.0
제거된 버전: v11.7.0
알 수 없는 stdout
또는 stderr
파일 유형으로 Node.js 프로세스를 시작하려고 시도했습니다. 이 오류는 일반적으로 Node.js 자체 내의 버그를 나타내지만 사용자 코드가 트리거할 수도 있습니다.
ERR_V8BREAKITERATOR
V8 BreakIterator
API가 사용되었지만 전체 ICU 데이터 세트가 설치되지 않았습니다.
ERR_VALUE_OUT_OF_RANGE
추가된 버전: v9.0.0
제거된 버전: v10.0.0
주어진 값이 허용된 범위를 벗어날 때 사용됩니다.
ERR_VM_MODULE_LINKING_ERRORED
추가된 버전: v10.0.0
제거된 버전: v18.1.0, v16.17.0
링커 함수가 연결에 실패한 모듈을 반환했습니다.
ERR_VM_MODULE_NOT_LINKED
모듈은 인스턴스화하기 전에 성공적으로 연결되어야 합니다.
ERR_WORKER_UNSUPPORTED_EXTENSION
추가된 버전: v11.0.0
제거된 버전: v16.9.0
워커의 메인 스크립트에 사용된 경로 이름에 알 수 없는 파일 확장명이 있습니다.
ERR_ZLIB_BINDING_CLOSED
추가된 버전: v9.0.0
제거된 버전: v10.0.0
이미 닫힌 zlib
객체를 사용하려고 시도했을 때 사용됩니다.
OpenSSL 오류 코드
시간 유효성 오류
CERT_NOT_YET_VALID
인증서가 아직 유효하지 않습니다. notBefore 날짜가 현재 시간 이후입니다.
CERT_HAS_EXPIRED
인증서가 만료되었습니다. notAfter 날짜가 현재 시간 이전입니다.
CRL_NOT_YET_VALID
인증서 해지 목록(CRL)에 미래 발행 날짜가 있습니다.
CRL_HAS_EXPIRED
인증서 해지 목록(CRL)이 만료되었습니다.
CERT_REVOKED
인증서가 해지되었습니다. 인증서 해지 목록(CRL)에 있습니다.
신뢰 또는 체인 관련 오류
UNABLE_TO_GET_ISSUER_CERT
조회된 인증서의 발급자 인증서를 찾을 수 없습니다. 이는 일반적으로 신뢰할 수 있는 인증서 목록이 완전하지 않음을 의미합니다.
UNABLE_TO_GET_ISSUER_CERT_LOCALLY
인증서의 발급자를 알 수 없습니다. 발급자가 신뢰할 수 있는 인증서 목록에 포함되지 않은 경우입니다.
DEPTH_ZERO_SELF_SIGNED_CERT
전달된 인증서가 자체 서명되었으며 동일한 인증서를 신뢰할 수 있는 인증서 목록에서 찾을 수 없습니다.
SELF_SIGNED_CERT_IN_CHAIN
인증서의 발급자를 알 수 없습니다. 발급자가 신뢰할 수 있는 인증서 목록에 포함되지 않은 경우입니다.
CERT_CHAIN_TOO_LONG
인증서 체인 길이가 최대 깊이보다 깁니다.
UNABLE_TO_GET_CRL
인증서에서 참조하는 CRL을 찾을 수 없습니다.
UNABLE_TO_VERIFY_LEAF_SIGNATURE
체인에 인증서가 하나만 포함되어 있고 자체 서명되지 않았기 때문에 서명을 확인할 수 없습니다.
CERT_UNTRUSTED
루트 인증 기관(CA)이 지정된 목적에 대해 신뢰할 수 있는 것으로 표시되지 않았습니다.
기본 확장 오류
INVALID_CA
CA 인증서가 유효하지 않습니다. CA가 아니거나 해당 확장이 제공된 목적과 일치하지 않습니다.
PATH_LENGTH_EXCEEDED
basicConstraints pathlength 매개변수가 초과되었습니다.
이름 관련 오류
HOSTNAME_MISMATCH
인증서가 제공된 이름과 일치하지 않습니다.
사용 및 정책 오류
INVALID_PURPOSE
제공된 인증서를 지정된 용도로 사용할 수 없습니다.
CERT_REJECTED
루트 CA가 지정된 용도를 거부하도록 표시되었습니다.
서식 오류
CERT_SIGNATURE_FAILURE
인증서의 서명이 유효하지 않습니다.
CRL_SIGNATURE_FAILURE
인증서 해지 목록(CRL)의 서명이 유효하지 않습니다.
ERROR_IN_CERT_NOT_BEFORE_FIELD
인증서 notBefore 필드에 유효하지 않은 시간이 포함되어 있습니다.
ERROR_IN_CERT_NOT_AFTER_FIELD
인증서 notAfter 필드에 유효하지 않은 시간이 포함되어 있습니다.
ERROR_IN_CRL_LAST_UPDATE_FIELD
CRL lastUpdate 필드에 유효하지 않은 시간이 포함되어 있습니다.
ERROR_IN_CRL_NEXT_UPDATE_FIELD
CRL nextUpdate 필드에 유효하지 않은 시간이 포함되어 있습니다.
UNABLE_TO_DECRYPT_CERT_SIGNATURE
인증서 서명을 해독할 수 없습니다. 이는 예상 값과 일치하지 않는 것이 아니라 실제 서명 값을 확인할 수 없음을 의미하며, RSA 키에만 의미가 있습니다.
UNABLE_TO_DECRYPT_CRL_SIGNATURE
인증서 해지 목록(CRL) 서명을 해독할 수 없습니다. 이는 예상 값과 일치하지 않는 것이 아니라 실제 서명 값을 확인할 수 없음을 의미합니다.
UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY
인증서 SubjectPublicKeyInfo의 공개 키를 읽을 수 없습니다.
기타 OpenSSL 오류
OUT_OF_MEM
메모리를 할당하는 동안 오류가 발생했습니다. 이런 일은 없어야 합니다.