Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lack of fetch function #308

Open
rafal-zelek opened this issue Jun 12, 2023 · 1 comment
Open

Lack of fetch function #308

rafal-zelek opened this issue Jun 12, 2023 · 1 comment

Comments

@rafal-zelek
Copy link

I have node-cache in version 5.1.2 in package.json

    "node-cache": "5.1.2",

When I try to use fetch function, it's not presented.
It's not even presented in the npm code preview. https://www.npmjs.com/package/node-cache?activeTab=code

node_modules/node-cache/index.d.ts:

declare class NodeCache extends events.EventEmitter {
	/** container for cached data */
	data: Data;

	/** module options */
	options: Options;

	/** statistics container */
	stats: Stats;

	/** constructor */
	constructor(options?: Options);

	/**
	 * get a cached key and change the stats
	 *
	 * @param key cache key
	 * @returns The value stored in the key
	 */
	get<T>(
		key: Key
	): T | undefined;

	/**
	 * get multiple cached keys at once and change the stats
	 *
	 * @param keys an array of keys
	 * @returns an object containing the values stored in the matching keys
	 */
	mget<T>(
		keys: Key[]
	): { [key: string]: T };

	/**
	 * set a cached key and change the stats
	 *
	 * @param key cache key
	 * @param value A element to cache. If the option `option.forceString` is `true` the module trys to translate
	 * it to a serialized JSON
	 * @param ttl The time to live in seconds.
	 */
	set<T>(
		key: Key,
		value: T,
		ttl: number | string
	): boolean;

	set<T>(
		key: Key,
		value: T
	): boolean;

	/**
	 * set multiple cached keys at once and change the stats
	 *
	 * @param keyValueSet an array of object which includes key,value and ttl
	 */
	mset<T>(
		keyValueSet: ValueSetItem<T>[]
	): boolean;

	/**
	 * remove keys
	 * @param keys cache key to delete or a array of cache keys
	 * @param cb Callback function
	 * @returns Number of deleted keys
	 */
	del(
		keys: Key | Key[]
	): number;

	/**
	 * get a cached key and remove it from the cache.
	 * Equivalent to calling `get(key)` + `del(key)`.
	 * Useful for implementing `single use` mechanism such as OTP, where once a value is read it will become obsolete.
	 *
	 * @param key cache key
	 * @returns The value stored in the key
	 */
	take<T>(
		key: Key
	): T | undefined;
					  
	/**
	 * reset or redefine the ttl of a key. If `ttl` is not passed or set to 0 it's similar to `.del()`
	 */
	ttl(
		key: Key,
		ttl: number
	): boolean;

	ttl(
		key: Key
	): boolean;

	getTtl(
		key: Key,
	): number|undefined;

	getTtl(
		key: Key
	): boolean;

	/**
	 * list all keys within this cache
	 * @returns An array of all keys
	 */
	keys(): string[];

	/**
	 * get the stats
	 *
	 * @returns Stats data
	 */
	getStats(): Stats;

	/**
	 * Check if a key is cached
	 * @param key cache key to check
	 * @returns Boolean indicating if the key is cached or not
	 */
	has(key: Key): boolean;

	/**
	 * flush the whole data and reset the stats
	 */
	flushAll(): void;

	/**
	 * This will clear the interval timeout which is set on checkperiod option.
	 */
	close(): void;

	/**
	 * flush the stats and reset all counters to 0
	 */
	flushStats(): void;
}

@AggelosAst
Copy link

AggelosAst commented Aug 28, 2023

Are you talking about retrieving data from the cache? Because this exists:

/**
	 * get a cached key and change the stats
	 *
	 * @param key cache key
	 * @returns The value stored in the key
	 */
	get<T>(
		key: Key
	): T | undefined;

	/**
	 * get multiple cached keys at once and change the stats
	 *
	 * @param keys an array of keys
	 * @returns an object containing the values stored in the matching keys
	 */
	mget<T>(
		keys: Key[]
	): { [key: string]: T };
**/

Or, youre referencing about fetch from node-fetch as in a http wrapper?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants