Name: Sashank Thupukari
Date: April 2nd, 2017
Project Topic: Local Dogs for Adoption
Data point fields:
Field 1: NameType: StringField 2: BreedType: StringField 3: WeightType: NumberField 4: AgeType: NumberField 5: CharacteristicsType: [String]
Schema:
{
name: {
type: String,
required: true
},
breed: {
type: String,
required: true
},
weight: {
type: Number,
required: true
},
age: {
type: Number,
required: true
},
characteristics: [String]
}HTML form route: /addDog
POST endpoint route: /api/addDog
Example Node.js POST request to endpoint:
var request = require("request");
var options = {
method: 'POST',
url: 'http://localhost:3000/api/addDog',
headers: {
'content-type': 'application/x-www-form-urlencoded'
},
form: {
name: 'Cupcake',
breed: 'German Shepherd',
image: "http://i.imgur.com/iGLcfkN.jpg",
age: 6
characteristics: ["Brown", "Black", "Sleepy", "Lazy"]
}
};
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
});GET endpoint route: /api/...
Search Field: name
Navigation Filters
- Heavy Dogs ->
/heaviest - Select a Breed ->
/breed/:breed_name - Young Dog ->
/youngest - Random Dog ->
/random - Alphabetical Dogs ->
/alphabetical