Class: ServiceStorage
Storage driver, имплементирующий простое хранилище с помощью StorageService API
StorageService API временно поддерживает дополнительные методы (find
, list
, clear
), не являющиеся частью StorageDriver интерфейса и не могут быть небезопасны для продакшена.
Заметьте
ТОЛЬКО ДЛЯ ПРОТОТИПИРОВАНИЯ. Данное хранилище, несмотря на его надежность, нарушает политику безопасности Spatium в отношении хранения обоих секретов в одном месте. Используя это хранилище, вы храните оба пользовательских секрета на стороне Spatium, тем самым получаете КАСТОДИАЛЬНЫЙ кошелек.
Имплементирует
StorageDriver
Конструкторы
constructor
• new ServiceStorage(url
, auth
)
Заметьте
запросы относятся к accountId сессии авторизации, тем самым хранят данные независимо для каждого авторизированного пользователя
Пример
const auth = new AuthorizationSession('https://cloud.spatium.net/authorization/v1', uuid(randomBytes), ['read', 'secret']);
const storage = new ServiceStorage('https://cloud.spatium.net/storage/v1', auth);
await write(storage, { room: '323', topic: 'dinner' }, { foo: 'woo' });
expect(await read(storage, { room: '323', topic: 'dinner' })).toEqual({ foo: 'woo' });
expect(await read(storage, { room: '323', topic: 'dinner' })).toEqual({ foo: 'woo' });
expect(await take(storage, { room: '323', topic: 'dinner' })).toEqual({ foo: 'woo' });
expect(await take(storage, { room: '323', topic: 'dinner' })).toEqual(null);
Параметры
Имя | Тип | Описание |
---|---|---|
url |
string |
storage service эндпоинт (HTTP(S)) |
auth |
AuthorizationSession |
сессия авторизации AuthorizationSession |
Методы
clear
▸ clear(filter
): Promise
<number
>
Deprecated
используется для отслеживания
Параметры
Имя | Тип |
---|---|
filter |
Partial <{}> |
Возвращает
Promise
<number
>
find
▸ find(filter
): Promise
<null
| StoragePayload
>
Deprecated
используется для отслеживания
Параметры
Имя | Тип |
---|---|
filter |
Partial <{}> |
Возвращает
Promise
<null
| StoragePayload
>
list
▸ list(filter
): Promise
<StoragePayload
[]>
Deprecated
используется для отслеживания
Параметры
Имя | Тип |
---|---|
filter |
Partial <{}> |
Возвращает
Promise
<StoragePayload
[]>
read
▸ read(meta
): Promise
<unknown
>
Параметры
Имя | Тип |
---|---|
meta |
StorageMeta |
Возвращает
Promise
<unknown
>
Имплементация
StorageDriver.read
take
▸ take(meta
): Promise
<unknown
>
Параметры
Имя | Тип |
---|---|
meta |
StorageMeta |
Возвращает
Promise
<unknown
>
Имплементация
StorageDriver.take
write
▸ write(meta
, data
): Promise
<void
>
Параметры
Имя | Тип |
---|---|
meta |
StorageMeta |
data |
unknown |
Возвращает
Promise
<void
>
Имплементация
StorageDriver.write