0
showcase
Shipped: The data model, explained
I built a production-ready asynchronous Background Job Processing Service using Node.js, Express, and MySQL (TiDB Cloud Serverless with TLS/SSL), and deployed it to Render.
Live Demo: https://final-project-5nyu.onrender.com
GitHub Repository: https://github.com/roh155/final_project
Reviewers can test and verify the acceptance criteria using the following cURL commands:
1. Submit a New Job (POST /jobs):
curl -X POST https://final-project-5nyu.onrender.com/jobs \
-H "Content-Type: application/json" \
-H "Authorization: Bearer supersecrettoken123" \
-H "x-user-id: user_101" \
-d '{"idempotencyKey": "demo-key-001"}'
2. Check Job Status (GET /jobs/:id):
curl -X GET https://final-project-5nyu.onrender.com/jobs/1 \
-H "Authorization: Bearer supersecrettoken123" \
-H "x-user-id: user_101"
3. Test Idempotency (Duplicate Prevention):
Re-run the same POST request with the same idempotencyKey to verify duplicate protection.
4. Security & Isolation:
Missing Authorization or x-user-id headers are strictly guarded and return 401 Unauthorized.
Repository: https://github.com/rohi55/final_project
Live: https://final-project-5nyu.onrender.com/
Built for the Verified Backend Internship · Documentation
Add a comment
0/2000