2017-10-04 1 views

답변

2

네, 네가 원하는대로 더 많은 정보가 필요할지라도 네가 할 수 있겠다. 네가 봉사하고 싶든, 다운로드 할 수있게 할 지, 어떤 노드 .js 패키지 (예 : ExpressJS). 일반적으로 스트리밍을 사용하여 데이터베이스에서 전체 바이너리를 한 조각으로 읽는 대신, 바이너리를 청크로 읽는 것이 좋습니다. 당신은 분명 문제가없는

const displayImage = ((req, res) => { 
    const uri = `/image/${req.params.id}`; //use your URI 
    res.writeHead(200, { 'Content-type': 'image/png' }); //use your Content-type 
    const data = []; 
    db.documents.read(uri).stream('chunked') 
    .on('data', chunk => data.push(chunk)) 
    .on('error', error => console.error(error)) 
    .on('end',() => { 
    let buffer = new Buffer(data.length).fill(0); 
    buffer = Buffer.concat(data); 
    res.end(buffer); 
    }); 
}); 
+0

설명해 주셔서 감사합니다.하지만 버퍼가 무엇인지 설명하고 새 키워드를 사용하는 이유는 무엇입니까? –

+0

스트림과 상호 작용하는 내장 Node.js API는 다음과 같습니다. https://nodejs.org/api/buffer.html#buffer_buffer – Tamas

1

:

다음은이 개념을 보여 Express와 Node.js를를 사용하여 코드입니다. 아니면 적어도별로 구체적이지 않습니다. 일반적으로 바이너리 문서는 질의 및 반환 될 때 다른 내용과 동일하게 취급됩니다. node.js에는 청크 데이터와 같이 신경 쓸 수있는 항목이 있습니다.

일반적인 정보는 여기를 참조하십시오 나는 당신이 가능하게 요구하고 무슨 생각을 들어 https://docs.marklogic.com/guide/app-dev/binaries

은 Node.js를 진 내용에 대한이 위대한 쓰기까지 한 번 봐 가지고 : https://developer.marklogic.com/blog/working-with-binary-documents 이 페이지가 가득 너를 도울 수있는 좋은 것들. 난 당신이 위에서 아래로 의사를 통해 실행하는 것이 좋습니다. 읽어야 할 가치가 있습니다. 특히 제목이 "이미지 표시"섹션을보십시오. 이것은 이미지를위한 것입니다. 그러나이 기술은 다른 바이너리 컨텐트와 동일합니다.

관련 문제