cookie-utils-js
Version:
A simple JavaScript API for handling cookies.
98 lines (81 loc) • 2.66 kB
Markdown
[](https://github.com/chutaozh/cookie-utils-js/blob/master/README.md) | 中文
<p>
<img alt="npm" src="https://img.shields.io/npm/v/cookie-utils-js?logo=npm&color=%234ac41c">
<img alt="npm" src="https://img.shields.io/npm/dm/cookie-utils-js?logo=npm&color=%234ac41c">
<img alt="GitHub forks" src="https://img.shields.io/github/forks/chutaozh/cookie-utils-js?logo=github&color=%234ac41c">
<img alt="GitHub Repo stars" src="https://img.shields.io/github/stars/chutaozh/cookie-utils-js?logo=github&color=%234ac41c">
</p>
一个简单的 js 库,提供几个 api 便可轻松读写 cookies。
```powershell
$ npm i cookie-utils-js
$ yarn add cookie-utils-js
```
```js
import Cookie from 'cookie-utils-js';
Cookie.set('foo', 'bar');
```
* 创建单个 `cookie`:
```js
Cookie.set('foo', 'bar');
// 或
Cookie.set({ name: 'foo', value: 'bar', ... });
```
* 批量创建 `cookies`:
```js
Cookie.set([
{ name: 'foo1', value: 'bar1' },
{ name: 'foo2', value: 'bar2' }
]);
```
* 给`cookie` 设置过期时间`expires:Date | number(毫秒)`,你也可以设置其他选项如: `path`, `domain` 等:
```js
Cookie.set('foo', 'bar', { expires: 7 * 1000, path: '/' });
// 或
Cookie.set({ name: 'foo', value: 'bar', expires: 7 * 1000, path: '/' });
```
* 读取当前 `path` 下所有 `cookies`,并以 `json` 格式返回:
```js
Cookie.get(); // => { foo: 'bar' }
```
* 读取指定 cookie:
```js
Cookie.get('foo'); // => 'bar'
```
* 批量读取 `cookies`,并以 `json` 格式返回:
```js
Cookie.get(['foo1', 'foo2']); // => { foo1: 'bar1', foo2: 'bar2' }
```
* 读取 `cookies` 并以 `json` 格式返回, `alias` 将替换 `name` 作为新属性名:
```js
Cookie.get([
{ name: 'foo1' },
{ name: 'foo2', alias: 'FOO2' } // 设置别名
]); // => { foo1: 'bar1', FOO2: 'bar2' }
```
* 删除单个 `cookie`:
```js
Cookie.remove('foo');
// 或
Cookie.remove('foo', '/'); // 删除指定path下的cookie: Cookie.remove(name, path)
```
* 批量删除:
```js
Cookie.remove(['foo1', 'foo2']);
// 或
Cookie.remove([
{ name: 'foo1' },
{ name: 'foo2', path: '/' } // 删除指定path下的cookie
]);
```
清空所有 cookies (注意: 仅支持清空当前`path(default: '/')`下的 cookies).
浏览器是否禁用了 cookies. `(true/false)`