1
I NodeJS GCS 클라이언트 라이브러리를 사용하고 있고 버킷에 디렉토리를 나열하려면 어떻게해야합니까?NodeJS를 사용하여 GCS 버킷에 디렉토리를 나열하는 방법
I NodeJS GCS 클라이언트 라이브러리를 사용하고 있고 버킷에 디렉토리를 나열하려면 어떻게해야합니까?NodeJS를 사용하여 GCS 버킷에 디렉토리를 나열하는 방법
먼저 실행하여 package.json
파일에 NodeJS GCS 클라이언트 라이브러리에 대한 종속성을 추가 :
const storage = require('@google-cloud/storage');
...
const projectId = '<<<<<your-project-id-here>>>>>';
const gcs = storage({
projectId: projectId
});
let bucketName = '<<<<<your-bucket-name-here>>>>>';
let bucket = gcs.bucket(bucketName);
bucket.getFiles({}, (err, files,apires) => {console.log(err,files,apires)});
이됩니다
npm -i @google-cloud/storage --save
그런 다음 모든 파일을 나열 코드에 이것을 추가 모든 파일을 files
에 대한 전체 경로와 함께 반환하십시오.
디렉터리 만 나열하려면 자동 라이브러리를 사용하지 않아야하는 클라이언트 라이브러리의 문제를 해결 한 다음 추가 인수를 CB에 반환해야합니다. 그래서 여기에 코드를 변경하려면 :
let cb=(err, files,next,apires) => {
console.log(err,files,apires);
if(!!next)
{
bucket.getFiles(next,cb);
}
}
bucket.getFiles({delimiter:'/', autoPaginate:false}, cb);
이 apires.prefixes
에 /
후행 루트 경로에서 디렉토리 목록을 반환합니다.
let cb=(err, files,next,apires) => {
console.log(err,files,apires);
if(!!next)
{
bucket.getFiles(next,cb);
}
}
bucket.getFiles({prefix:'foo/', delimiter:'/', autoPaginate:false}, cb);
:
는
foo/
디렉토리 사용에서이 코드를 디렉토리만을 나열하려면