in api/v1/src/spots/dataManager.js [140:178]
async function getSpot(requestId, bucketName, fileName) {
console.log(`RequestId: ${requestId}, bucketName: ${bucketName}, fileName: ${fileName}`);
const query = querystring.encode({
bucketName: bucketName,
fileName: fileName
});
const responseData = {
requestId: requestId,
query: `/${requestId}?${query}`,
bucketName: bucketName,
fileName: fileName
}
const exists = await storageUtil.fileExists(bucketName, fileName).catch(err => {
console.warn(err);
return { success: false, errors: [err.message] };
});
if (!exists) {
const message = `fileName: '${fileName}' does not exist in bucketName: '${bucketName}'`;
return { success: false, errors: [message] };
}
const metadata = await storageUtil.getFileMetadata(bucketName, fileName).catch(err => {
console.warn(err);
return { success: false, errors: [err.message] };
});
if (metadata.metadata === undefined || metadata.metadata.requestId === undefined || metadata.metadata.requestId !== requestId) {
console.log(metadata);
const message = `fileName: '${fileName}' does not have the signature for requestId: '${requestId}'`;
return { success: false, code: 400, errors: [message] };
}
const signedUrl = await storageUtil.getUrl(bucketName, fileName, true).catch(err => {
console.warn(err);
return { success: false, errors: [err.message] };
});
return { data: { ...responseData, signedUrl: signedUrl }, success: true };
}