-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
62 lines (50 loc) · 1.71 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
require("dotenv").config();
const express = require("express");
const formidable = require("express-formidable");
const app = express();
const mongoose = require("mongoose");
const cors = require("cors");
const stripe = require("stripe")(process.env.STRIPE_API_SECRET);
app.use(cors());
app.use(formidable());
mongoose.connect(process.env.MONGODB_URL);
app.get("", (req, res) => {
res.status(200).json({
message: "Welcome to Vinted backend",
});
});
// Import routes
const userRoutes = require("./routes/user"); // signUp and Login
app.use(userRoutes);
const offerPublishRoute = require("./routes/offer-publish"); // Publish an offer
app.use(offerPublishRoute);
const offerFilterRoute = require("./routes/offer-filter"); // Search an offer with filters
app.use(offerFilterRoute);
// const offerUpdate = require("./routes/offer-update"); //Update offer (pas terminée)
// app.use(offerUpdate);
const offerDelete = require("./routes/offer-delete"); //Delete offer
app.use(offerDelete);
const offerFindByIdRoute = require("./routes/offer-find-by-id"); // Search an offer by id
app.use(offerFindByIdRoute);
app.post("/payment", async (req, res) => {
console.log(req.body);
// Réception du token créer via l'API Stripe depuis le Frontend
const stripeToken = req.fields.stripeToken;
// Création de la transaction
const response = await stripe.charges.create({
amount: 100,
currency: "eur",
description: "Très bel objet",
source: stripeToken,
});
console.log(response.status);
// TODO
// Sauvegarder la transaction dans la bdd
res.json(response);
});
app.all("*", (req, res) => {
res.status(404).send("Page introuvable");
});
app.listen(process.env.PORT, () => {
console.log("Server started!");
});