node.js - express 中怎样把grid-fs中存储的图片,显示在网页上?
黄舟
黄舟 2017-04-17 15:17:59
0
1
689

express 中怎样把grid-fs中存储的图片,显示在网页上?

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

모든 응답(1)
黄舟

Express를 사용하여 프런트엔드에서 GridFS에 이미지 표시

몽고 준비

  • mongo 서비스를 시작하세요. mongod --dbpath ~/mongodb_Data (~/mongodb_Data를 원하는 경로로 바꾸세요)

  • mongofiles -d test put /Users/taozhi/Pictures/bg/21.jpg을 사용하여 gridfs에 사진을 추가하고 이미지 경로 /Users/taozhi/Pictures/bg/21.jpg를 원하는 경로로 바꾸세요. 추가가 완료되면 다음 메시지가 표시됩니다.

    으아악
  • mongo기본 몽고 서버에 접속하면 db.fs.files.find()방금 저장된 이미지의 파일명, 파일 크기, 블록 크기, 시간, MD5 검사 코드 등의 정보를 확인할 수 있습니다.

    으아악
  • 파일의 _id에 따라 fs.chunks 컬렉션의 모든 청크를 쿼리합니다. db.fs.chunks.find({files_id:ObjectId('581aad5aa3205aa0b201aceb')})

이제 데이터 준비 작업은 거의 끝났으니, 애플리케이션 서비스를 작성해 볼까요!

  • 또는 GridFS의 writeFile을 직접 사용할 수도 있습니다.

노드 서비스

서비스는 여러 단계로 나누어집니다

  • 프로세스 집합이라면 파일을 읽어보세요

  • mongo에 쓰기

  • 서비스 중 데이터 읽기

  • 프런트엔드로 돌아가기

요청하신 것은 사진이니까 여기서 파일데이터를 읽어서 base64로 인코딩해서 프론트엔드로 돌려주시면 사진을 보실 수 있습니다

app.js

으아악

index.eje

으아악

개인 테스트에 성공했습니다.

조금 성급하게 작성한 코드라, 직접 개선할 수 있는 부분이 많습니다. 참고만 하시길 바랍니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿