BEGINNER • API Foundations and HTTP
Security Drill for e-commerce checkout backend #9
This lesson targets reduce API latency in a realistic e-commerce checkout backend workflow. You will practice commands: npm init -y | npm run dev | node server.js. The code example is specific to backend API engineering tasks for this lesson objective.
Code Example
type Job = {
id: string;
attempts: number;
maxAttempts: number;
payload: { scenario: string; action: string };
};
function processJob(job: Job) {
if (job.attempts >= job.maxAttempts) {
return { status: "dead-letter", jobId: job.id };
}
return {
status: "scheduled-retry",
nextAttempt: job.attempts + 1,
scenario: job.payload.scenario,
action: job.payload.action,
};
}
const sampleJob: Job = {
id: "job-42",
attempts: 1,
maxAttempts: 4,
payload: { scenario: "e-commerce checkout backend", action: "reduce API latency" },
};
console.log(processJob(sampleJob));Commands & References
- npm init -y
- npm run dev
- node server.js
Lab Steps
- Prepare environment using: npm init -y
- Implement endpoint or middleware for this scenario.
- Test positive/negative cases and inspect response contracts.
- Document one reliability or security improvement.
Exercises
- Add one edge-case validation and return clear error details.
- Improve one endpoint to be idempotent and test retries.
- Write one test case proving the expected API behavior.