Spaces:
Paused
Paused
[](https://www.npmjs.com/package/@mswjs/cookies) | |
# Cookies | |
Manage request/response cookies in the environments where those are not supported. | |
## Install | |
```bash | |
npm install @mswjs/cookies | |
``` | |
## API | |
### `set(request: Request, response: Response)` | |
Sets the response cookies in the store associated with the given request origin. | |
```js | |
store.set( | |
new Request('https://mswjs.io'), | |
new Response(null, { | |
headers: new Headers({ | |
'set-cookie': 'id=abc-123', | |
}), | |
}), | |
) | |
``` | |
### `get(request: Request)` | |
Retrieves the cookies relevant to the given request's origin. | |
```js | |
store.get(new Request('https://mswjs.io')) | |
``` | |
> `.get()` respects the `req.credentials` policy. | |
Executing this command returns a `Map` instance with the request cookies: | |
```js | |
Map { | |
"id" => { name: "id", value: "abc-123" } | |
} | |
``` | |
### `getAll()` | |
Returns all the cookies in the store. | |
Executing `.getAll()` method returns a `Map` instance with request cookies grouped by request origin. | |
```js | |
Map { | |
"https://mswjs.io" => Map { | |
"id" => { name: "id", value: "abc-123" } | |
} | |
} | |
``` | |
### `deleteAll(request: Request)` | |
Removes all the cookies associated with the given request's origin. | |
### `persist()` | |
Persists the current store state in the `localStorage`. | |
### `hydrate()` | |
Hydrates the store values from the previously persisted state in `localStorage`. | |
### `clear()` | |
Removes all the cookies from the store, producing a nice and shiny empty store. | |
## Credits | |
Original idea by [Christoph Guttandin](https://github.com/chrisguttandin). | |