4.0.27 • Published 7 months ago

cacheability v4.0.27

Weekly downloads
5
License
MIT
Repository
github
Last release
7 months ago

cacheability

A utility class to parse, store and print http cache headers.

Build and publish License: MIT npm version

Installation

npm add cacheability

Documentation

Initialization

The constructor takes either a Headers instance, object literal of header key/values, cache-control header field value or Cacheability metadata object, parses it, if required, and then stores the result on the Cacheability instance's metadata property.

import { Cacheability } from "cacheability";

const headers = new Headers({
  "cache-control": "public, max-age=60",
  "content-type": "application/json",
  "etag": "33a64df551425fcc55e4d42a148795d9f25f89d4",
});

const cacheability = new Cacheability({ headers });

const { cacheControl, etag, ttl } = cacheability.metadata;
// cacheControl is { maxAge: 60, public: true }
// etag is 33a64df551425fcc55e4d42a148795d9f25f89d4
// ttl is 1516060712991 if Date.now is 1516060501948

Properties

metadata

The property holds the Cacheability instance's parsed cache headers data, including cache control directives, etag, and a derived TTL timestamp.

Methods

checkTTL

The method checks whether the TTL timestamp stored in the Cacheability instance is still valid, by comparing it to the current timestamp.

const cacheability = new Cacheability({ cacheControl: "public, max-age=3" });

// One second elapses...

const isValid = cacheability.checkTTL();
// isValid is true

// Three seconds elapse...

const isStillValid = cacheability.checkTTL();
// isStillValid is false

printCacheControl

The method prints a cache-control header field value based on the Cacheability instance's metadata. The max-age and/or s-maxage are derived from the TTL stored in the metadata.

const cacheability = new Cacheability({ cacheControl: "public, max-age=60, s-maxage=60" });

// Five seconds elapse...

const cacheControl = cacheability.printCacheControl();
// cacheControl is "public, max-age=55, s-maxage=55"

Changelog

Check out the features, fixes and more that go into each major, minor and patch version.

License

Cacheability is MIT Licensed.

4.0.27

7 months ago

4.0.26

7 months ago

4.0.25

7 months ago

4.0.24

7 months ago

4.0.23

8 months ago

4.0.21

9 months ago

4.0.22

9 months ago

4.0.19

1 year ago

4.0.20

1 year ago

4.0.18

1 year ago

4.0.4

2 years ago

4.0.7

2 years ago

4.0.6

2 years ago

4.0.1

2 years ago

4.0.0

2 years ago

4.0.3

2 years ago

4.0.2

2 years ago

4.0.9

2 years ago

4.0.8

2 years ago

3.0.2

2 years ago

4.0.10

2 years ago

4.0.15

2 years ago

4.0.12

2 years ago

4.0.11

2 years ago

4.0.14

2 years ago

4.0.13

2 years ago

3.0.1

5 years ago

3.0.0

6 years ago

2.0.10

6 years ago

2.0.9

6 years ago

2.0.8

6 years ago

2.0.7

6 years ago

2.0.6

6 years ago

2.0.5

6 years ago

2.0.4

7 years ago

2.0.2

7 years ago

2.0.1

7 years ago

2.0.0

7 years ago

1.0.10

7 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.7

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

1.0.0

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago

0.0.61

7 years ago

0.0.60

7 years ago

0.0.59

7 years ago

0.0.57

7 years ago

0.0.56

7 years ago

0.0.55

7 years ago

0.0.54

7 years ago

0.0.53

7 years ago

0.0.52

7 years ago

0.0.51

7 years ago

0.0.50

7 years ago

0.0.49

7 years ago

0.0.48

7 years ago

0.0.47

7 years ago

0.0.46

7 years ago

0.0.45

7 years ago

0.0.44

7 years ago

0.0.43

7 years ago

0.0.42

7 years ago

0.0.40

7 years ago

0.0.39

7 years ago

0.0.38

7 years ago

0.0.37

7 years ago

0.0.36

7 years ago

0.0.35

7 years ago

0.0.34

7 years ago

0.0.33

7 years ago

0.0.32

7 years ago

0.0.31

7 years ago

0.0.30

7 years ago

0.0.29

7 years ago

0.0.28

7 years ago

0.0.27

7 years ago

0.0.26

7 years ago

0.0.25

7 years ago

0.0.24

7 years ago

0.0.23

7 years ago

0.0.22

7 years ago

0.0.21

7 years ago

0.0.20

7 years ago

0.0.18

7 years ago

0.0.17

7 years ago

0.0.16

7 years ago

0.0.15

7 years ago

0.0.14

8 years ago

0.0.13

8 years ago

0.0.12

8 years ago

0.0.11

8 years ago

0.0.10

8 years ago

0.0.9

8 years ago

0.0.8

8 years ago

0.0.7

8 years ago

0.0.6

8 years ago

0.0.5

8 years ago

0.0.4

8 years ago

0.0.3

8 years ago

0.0.2

8 years ago

0.0.1

8 years ago