dphelper
Version:
dphelper devtools for developers
116 lines (88 loc) • 2.46 kB
Markdown
Cookie management utilities with security features.
| Function | Description | Example |
|----------|-------------|---------|
| `set` | Creates a cookie with specified properties | `dphelper.cookie.set({name: 'user', value: 'john', time: 365})` |
| `get` | Retrieves a cookie value by name | `dphelper.cookie.get('user')` |
| `delete` | Deletes a cookie by name | `dphelper.cookie.delete('user')` |
| `removeAll` | Clears all cookies | `dphelper.cookie.removeAll()` |
Complete cookie management:
- **Create** - Set cookies with expiration, path, security
- **Read** - Get cookie values
- **Delete** - Remove specific or all cookies
- **Security** - SameSite, Secure flags for CSRF protection
```javascript
// Simple cookie
dphelper.cookie.set({
name: 'theme',
value: 'dark'
});
// Cookie with expiration (days)
dphelper.cookie.set({
name: 'user',
value: 'john@example.com',
time: 30 // 30 days
});
// Secure cookie (HTTPS only)
dphelper.cookie.set({
name: 'session',
value: 'abc123',
secure: true,
sameSite: 'Strict'
});
```
```javascript
// Get cookie value
const theme = dphelper.cookie.get('theme');
console.log(theme); // "dark"
// Get session
const session = dphelper.cookie.get('session');
```
```javascript
// Delete specific cookie
dphelper.cookie.delete('theme');
// Clear all cookies
dphelper.cookie.removeAll();
```
```javascript
class CookieManager {
constructor() {}
// Save user preferences
savePreferences(prefs) {
dphelper.cookie.set({
name: 'preferences',
value: JSON.stringify(prefs),
time: 365,
sameSite: 'Lax'
});
}
// Load preferences
loadPreferences() {
const prefs = dphelper.cookie.get('preferences');
return prefs ? JSON.parse(prefs) : null;
}
// Clear all
clearAll() {
dphelper.cookie.removeAll();
}
}
```
- **SameSite** - Default 'Lax' for CSRF protection
- **Secure** - Automatic on HTTPS
- **Value Encoding** - URL encoding to prevent injection
- **Author:** Dario Passariello
- **Version:** 0.0.2
- **Creation Date:** 20210101
- **Last Modified:** 20240613
- **Environment:** Client-side only (browser)
---
*Automatically generated document*