이 가이드에서는 Node.js에서 읽기 가능한 스트림의 사용법을 설명합니다.
Node.js에서 읽기 가능한 스트림을 사용하는 방법은 무엇입니까?
“ 읽을 수 있음 ' 스트림은 '를 호출하여 생성됩니다. createReadStream() ” 그리고 읽은 데이터는 로컬 서버를 생성하여 웹 페이지에 표시할 수 있습니다. “의 도움으로 이벤트 리스너 에() ” 메서드를 읽기 가능한 스트림에 연결하여 파일 읽기가 시작되거나 끝날 때 메시지를 표시하거나 특정 작업을 수행할 수도 있습니다.
실제 데모를 보려면 예제를 살펴보세요.
예: 읽기 가능한 스트림을 사용하여 서버를 통해 콘텐츠 읽기 및 표시
이 예에서는 제공된 파일의 내용을 읽은 다음 웹 브라우저를 통해 표시합니다.
const fsObj = 필요하다 ( 'fs' ) ;
const httpObj = 필요하다 ( 'http' ) ;
const 로컬서버 = httpObj. 서버 생성 ( ( 요청, 응답 ) => {
노력하다 {
// 읽을 대상 파일
const 데이터 스트림 = fsObj. createReadStream ( '유즈케이스.txt' ) ;
// 파일을 응답으로 파이프합니다.
데이터 스트림. 파이프 ( 응답 ) ;
} 잡다 ( 오류 ) {
콘솔. 오류 ( 오류 ) ;
}
} ) ;
로컬서버. 듣다 ( 8080 , ( ) => {
콘솔. 통나무 ( '서버가 로컬 호스트 포트 번호: '8080'에서 실행 중입니다.' )
} ) ;
위 코드에 대한 설명은 다음과 같습니다.
- 먼저, 필수 '를 가져옵니다. FS ' 그리고 ' http ” 모듈을 저장하고 해당 객체를 “ fsObj ' 그리고 ' httpObj ” 변수를 각각 사용합니다.
- 다음으로, '를 호출하여 서버가 생성되었습니다. 생성서버() ' 메서드를 사용하고 새로 생성된 서버를 ' 로컬서버 ” 변수입니다.
- 그런 다음 ' 노력하다 ” 블록을 메서드 콜백 함수 내에서 호출하고 “ createReadStream() ”를 사용하는 방법 fsObj ” 변수입니다.
- 이 메서드 괄호 안에 읽어야 하는 대상 파일 콘텐츠를 전달하고 결과를 ' 데이터 스트림 ” 변수입니다.
- “를 삽입하세요. 데이터 스트림 ” 변수를 “ .파이프() ” 응답을 보내는 방법입니다.
- '를 활용하세요. 잡다 ” 블록을 사용하여 발생한 오류를 처리합니다.
- 마지막으로 포트 번호 '를 통해 서버를 수신하거나 설정합니다. 8080 ” 콜백 함수를 사용하여 성공 메시지를 표시합니다.
아래 명령을 통해 위 코드가 포함된 파일(controlFlow.js)을 실행합니다.
노드 제어 흐름. JS생성된 출력은 ' .파이프() ' 그리고 ' 읽기 가능한 스트림 ”, 파일 데이터를 읽고 웹 페이지에 표시하기 위해 대상 스트림으로 전송했습니다.
예 2: ReadStream을 사용하여 로컬로 정적 파일 읽기
이 경우 스트림을 통해 제공된 파일이 선택되고 해당 콘텐츠가 이벤트 리스너의 도움을 받아 콘솔 창 위에 표시됩니다.
const fsObj = 필요하다 ( 'fs' ) ;const 스트림 개체 = fsObj. createReadStream ( '유즈케이스.txt' ) ;
streamObj. ~에 ( '데이터' , ( 콘텐츠 ) => {
콘솔. 통나무 ( 콘텐츠. toString ( ) ) ;
} ) ;
streamObj. ~에 ( '끝' , ( ) => {
콘솔. 통나무 ( ' \N 파일 읽기를 마쳤습니다.' ) ;
} ) ;
streamObj. 파이프 ( 프로세스. 표준 출력 ) ;
위 코드에 대한 설명은 다음과 같습니다.
- 첫째, “ FS ' 모듈을 가져오고 해당 객체는 ' fsObj ” 변수입니다.
- 다음으로 “ fsObj '는 '를 호출합니다. createReadStream() ” 메서드를 사용하여 콘텐츠를 검색해야 하는 대상 파일의 경로를 전달합니다. 메소드의 결과를 새 변수 ' 스트림 개체 '.
- “를 첨부하세요. 에() '일 때 콜백 함수를 호출하는 'streamObj'가 포함된 메서드 데이터 '가 검색됩니다. 검색된 데이터는 데이터를 문자열 형식으로 변환하고 콘솔에 표시하는 콜백 함수의 매개변수로 전달됩니다.
- 다시 '를 첨부합니다. 에() '를 사용한 '메소드 스트림 개체 ” 그리고 이번에는 파일 읽기가 완료되면 콜백 함수가 종료 메시지를 표시합니다.
위 코드를 실행한 후 생성된 출력은 종료 메시지와 함께 읽은 데이터가 콘솔에 표시되었음을 보여줍니다.
이것이 Node.js에서 읽기 가능한 스트림의 사용에 관한 전부입니다.
결론
Node.js에서 읽을 수 있는 스트림으로 작업하려면 ' createReadStream() '는 '를 통해 호출됩니다. FS ” 모듈 개체입니다. 그런 다음 콘텐츠를 작성해야 하는 대상 파일 경로가 메서드 매개 변수로 전달됩니다. '와 함께 활용할 수 있습니다. .파이프() ” 다른 파일에 콘텐츠를 쓰는 등 검색된 데이터에 대해 추가 작업을 수행하는 방법입니다. 이 게시물에서는 읽기 가능한 스트림으로 작업하는 절차를 설명했습니다.