diff --git a/README.md b/README.md index baa3965..3cf107d 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,8 @@ const iomem = new Mem(['127.0.0.1:11211'], { timeout: 500, retries: 2 }) ... ``` +The first argument also accepts a string when you have only one server. + See [Custom servers](#custom-servers) and [Options](#options) for more details. ### Basic usage diff --git a/index.d.ts b/index.d.ts index bce1f2d..fa498af 100644 --- a/index.d.ts +++ b/index.d.ts @@ -3,7 +3,7 @@ import { Transform } from 'node:stream'; declare class Mem { - constructor(servers?: Mem.Addresses, options?: Mem.Options); + constructor(servers?: Mem.Addresses|Mem.Address, options?: Mem.Options); static DEFAULT_EXPIRY: Mem.Expiry; static setDefaultExpiry(expiry?: Mem.Expiry): void; diff --git a/src/net.js b/src/net.js index 2b40266..4f5aaad 100644 --- a/src/net.js +++ b/src/net.js @@ -201,6 +201,10 @@ class Net { this._servers = new Map() this._opaque = 0 + if (!Array.isArray(servers)) { + servers = [servers] + } + servers.forEach(address => { const server = new Server(address, this._options.maxConnections, this._options.connectionTimeout, this._options.keepAliveInitialDelay) this._servers.set(server.hostname, server) diff --git a/test/client.test.js b/test/client.test.js index 87d0a88..1389540 100644 --- a/test/client.test.js +++ b/test/client.test.js @@ -19,7 +19,7 @@ describe('client', () => { } beforeAll(() => { - iomem = new Mem(['memcached:test@127.0.0.1'], { + iomem = new Mem('memcached:test@127.0.0.1', { connectionTimeout: 500, timeout: 1000 })