Socket
Socket
Sign inDemoInstall

urlcache

Package Overview
Dependencies
6
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    urlcache

URL key-value cache.


Version published
Maintainers
1
Install size
88.4 kB
Created

Readme

Source

urlcache NPM Version Bower Version Build Status Dependency Status

URL key-value cache.

Installation

Node.js >= 0.10 is required; < 4.0 will need an Object.assign polyfill. To install, type this at the command line:

npm install urlcache

Constructor

var UrlCache = require("urlcache");
var cache = new UrlCache(options);

Methods

Note: all instances of url can be either a String or a url.parse()-compatible Object.

.clear([url])

Removes the url key-value pair. If the url argument is not defined, all pairs will be removed.

.get(url)

Returns the stored value of url. If no such value exists, undefined will be returned.

.length()

Returns the number of stored key-value pairs.

.set(url, value[, expiryTime])

Stores value (any type) into url key. Optionally, define expiryTime to override options.expiryTime.

cache.set("url", {"key":"value"});
cache.get("url");  //=> {"key":"value"}

cache.set("url", new Promise(function(resolve, reject) {
	// set value after some delayed event
	setTimeout(function() {
		resolve("value");
	}, 500);
});

Promise.resolve(cache.get("url")).then(function(value) {
    console.log(value);  //=> "value"
});

Options

options.defaultPorts

Type: Object
Default value: see urlobj.parse() options
A map of protocol default ports for options.normalizeUrls.

options.expiryTime

Type: Number
Default value: Infinity
The number of milliseconds in which a cached value should be considered valid.

options.normalizeUrls

Type: Boolean
Default value: true
When true, will remove unnecessary URL parts in order to avoid duplicates in cache.

options.stripUrlHashes

Type: Boolean
Default Value: true
When true, will remove #hashes from URLs. They are most likely not useful to you because they are local to the document that contains them.

Changelog

  • 0.7.0 support for Node.js v9
  • 0.6.0 added .length() and removed Object.assign() polyfill
  • 0.5.0 removed use of Promises as they were unnecessary
  • 0.4.0 simpler Promise-based API
  • 0.3.0 added options.defaultPorts, more tests
  • 0.2.0 simplified API
  • 0.1.0 initial release

Keywords

FAQs

Last updated on 13 Mar 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc