Fix: APIs & Schema (#25)

Alof of API Fixes
This commit is contained in:
Sathishkumar Krishnan
2022-03-03 02:09:00 +05:30
committed by GitHub
parent 52d020717c
commit 4763da2d69
33 changed files with 1360 additions and 346 deletions

44
src/config/aws.js Normal file
View File

@@ -0,0 +1,44 @@
const AWS = require("aws-sdk");
const fs = require("fs");
const { AWS_S3_ACCESS_KEY_ID, AWS_S3_SECRET_ACCESS_KEY, AWS_S3_BUCKET, AWS_S3_REGION } = require("./env");
AWS.config.update({
maxRetries: 3,
accessKeyId: AWS_S3_ACCESS_KEY_ID,
secretAccessKey: AWS_S3_SECRET_ACCESS_KEY,
region: AWS_S3_REGION,
});
const S3 = new AWS.S3();
module.exports = {
S3: {
uploadFile: async (key, filepath) => {
const fileReadStream = fs.createReadStream(filepath);
const params = {
Bucket: AWS_S3_BUCKET,
Key: key,
Body: fileReadStream,
};
try {
const response = await S3.upload(params).promise();
console.log("S3 Upload success", response);
fs.rmSync(filepath);
return response.Location;
} catch (error) {
console.log("S3 Upload Error", error);
fs.rmSync(filepath);
return false;
}
},
generatePresignedUrl: (url) => {
const key = url.split(".com/")[1];
return S3.getSignedUrl("getObject", {
Bucket: AWS_S3_BUCKET,
Key: key,
Expires: 600,
});
}
},
};

View File

@@ -4,9 +4,12 @@ const envVariables = {
API_PORT: process.env.API_PORT || "3000",
MONGODB_URI: process.env.MONGODB_URI || "mongodb://localhost:12017",
JWT_SECRET: process.env.JWT_SECRET || "secret123",
JWT_REFRESH_EXPIRY_TIME:
parseInt(process.env.JWT_REFRESH_EXPIRY_TIME) || 3600,
JWT_REFRESH_EXPIRY_TIME: parseInt(process.env.JWT_REFRESH_EXPIRY_TIME) || 3600,
JWT_ACCESS_EXPIRY_TIME: parseInt(process.env.JWT_ACCESS_EXPIRY_TIME) || 86400,
AWS_S3_BUCKET: process.env.AWS_S3_BUCKET,
AWS_S3_ACCESS_KEY_ID: process.env.AWS_S3_ACCESS_KEY_ID,
AWS_S3_SECRET_ACCESS_KEY: process.env.AWS_S3_SECRET_ACCESS_KEY,
AWS_S3_REGION: process.env.AWS_S3_REGION || "us-east-2",
};
module.exports = envVariables;