Skip to content

A Node.js implementation of RESTful APIs to fetch Marvel character information

Notifications You must be signed in to change notification settings

yuroitaki/marvel-characters

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Requirements

Installation

  1. Install Node, Yarn, Redis from links above or via command line
  2. Install Node dependencies
yarn
  1. Set up environment variables
cp .env.example .env

Build and Run

  1. Run Redis server
redis-server
  1. Start Node server
yarn dev
  1. Call APIs via Postman or browser

Test

yarn test

Caching Strategy

  • When there is no cache upon the first API call, all character ids are fetched from the external Marvel API
  • Then they are stored in an object together with a cached date in Redis
{
  "characters": [1, 2, 3],
  "timestamp": "2021-05-16"
}
  • When cache is found upon subsequent API call, all character ids are extracted from Redis, together with the timestamp
  • The timestamp is used to call the external Marvel API by being passed in as modifiedSince to fetch any additional characters that have been added since the cached date

About

A Node.js implementation of RESTful APIs to fetch Marvel character information

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published