Working get and post endpoitns
This commit is contained in:
5
constants.js
Normal file
5
constants.js
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
const COURSES_TABLE = "eg_courses";
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
COURSES_TABLE
|
||||||
|
};
|
||||||
@@ -1,9 +1,10 @@
|
|||||||
const {createResponse} = require('../../helpers');
|
const {createResponse} = require('../../helpers');
|
||||||
const db = require('../../services/db');
|
const db = require('../../services/db');
|
||||||
|
const {COURSES_TABLE} = require('../../constants');
|
||||||
|
|
||||||
module.exports.default = async () => {
|
module.exports.default = async () => {
|
||||||
try {
|
try {
|
||||||
const courses = await db.scan('eg_courses');
|
const courses = await db.scan(COURSES_TABLE);
|
||||||
|
|
||||||
return createResponse(200, {
|
return createResponse(200, {
|
||||||
courses: courses
|
courses: courses
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
const {createResponse} = require('../../helpers');
|
const {createResponse} = require('../../helpers');
|
||||||
const {parseAndValidateBody} = require('../../validators');
|
const {parseAndValidateBody} = require('../../validators');
|
||||||
const {courseSchema} = require('../../validators/schemas');
|
const {courseSchema} = require('../../validators/schemas');
|
||||||
|
const {COURSES_TABLE} = require('../../constants');
|
||||||
const db = require('../../services/db');
|
const db = require('../../services/db');
|
||||||
|
|
||||||
module.exports.default = async (event, context, callback) => {
|
module.exports.default = async (event, context, callback) => {
|
||||||
try {
|
try {
|
||||||
const course = await parseAndValidateBody(courseSchema, event.body);
|
const course = await parseAndValidateBody(courseSchema, event.body);
|
||||||
const createCourseResult = await db.create('gt_courses', course);
|
const createCourseResult = await db.create(COURSES_TABLE, course);
|
||||||
return createResponse(200, {course: createCourseResult});
|
return createResponse(200, {course: createCourseResult});
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
const statusCode = (err && err.statusCode) || 500;
|
const statusCode = (err && err.statusCode) || 500;
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
const courseSchema = {
|
const courseSchema = {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"course_name": {"type": "string"},
|
"name": {"type": "string"},
|
||||||
"num_tests": {"type": "number"},
|
"num_tests": {"type": "number"},
|
||||||
"num_questions_per_test": {"type": "number"},
|
"num_questions_per_test": {"type": "number"},
|
||||||
"answers": {"type": "array"}
|
"answers": {"type": "array"}
|
||||||
},
|
},
|
||||||
"required": ["course_name", "num_tests", "num_questions_per_test", "answers"]
|
"required": ["name", "num_tests", "num_questions_per_test", "answers"]
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
|
|||||||
Reference in New Issue
Block a user