-
Notifications
You must be signed in to change notification settings - Fork 30k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
PR-URL: #46213 Reviewed-By: Richard Lau <rlau@redhat.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
- Loading branch information
1 parent
8393ebc
commit 00302fc
Showing
37 changed files
with
5,300 additions
and
527 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
# Cookie Handling | ||
|
||
## `Cookie` interface | ||
|
||
* **name** `string` | ||
* **value** `string` | ||
* **expires** `Date|number` (optional) | ||
* **maxAge** `number` (optional) | ||
* **domain** `string` (optional) | ||
* **path** `string` (optional) | ||
* **secure** `boolean` (optional) | ||
* **httpOnly** `boolean` (optional) | ||
* **sameSite** `'String'|'Lax'|'None'` (optional) | ||
* **unparsed** `string[]` (optional) Left over attributes that weren't parsed. | ||
|
||
## `deleteCookie(headers, name[, attributes])` | ||
|
||
Sets the expiry time of the cookie to the unix epoch, causing browsers to delete it when received. | ||
|
||
```js | ||
import { deleteCookie, Headers } from 'undici' | ||
|
||
const headers = new Headers() | ||
deleteCookie(headers, 'name') | ||
|
||
console.log(headers.get('set-cookie')) // name=; Expires=Thu, 01 Jan 1970 00:00:00 GMT | ||
``` | ||
|
||
Arguments: | ||
|
||
* **headers** `Headers` | ||
* **name** `string` | ||
* **attributes** `{ path?: string, domain?: string }` (optional) | ||
|
||
Returns: `void` | ||
|
||
## `getCookies(headers)` | ||
|
||
Parses the `Cookie` header and returns a list of attributes and values. | ||
|
||
```js | ||
import { getCookies, Headers } from 'undici' | ||
|
||
const headers = new Headers({ | ||
cookie: 'get=cookies; and=attributes' | ||
}) | ||
|
||
console.log(getCookies(headers)) // { get: 'cookies', and: 'attributes' } | ||
``` | ||
|
||
Arguments: | ||
|
||
* **headers** `Headers` | ||
|
||
Returns: `Record<string, string>` | ||
|
||
## `getSetCookies(headers)` | ||
|
||
Parses all `Set-Cookie` headers. | ||
|
||
```js | ||
import { getSetCookies, Headers } from 'undici' | ||
|
||
const headers = new Headers({ 'set-cookie': 'undici=getSetCookies; Secure' }) | ||
|
||
console.log(getSetCookies(headers)) | ||
// [ | ||
// { | ||
// name: 'undici', | ||
// value: 'getSetCookies', | ||
// secure: true | ||
// } | ||
// ] | ||
|
||
``` | ||
|
||
Arguments: | ||
|
||
* **headers** `Headers` | ||
|
||
Returns: `Cookie[]` | ||
|
||
## `setCookie(headers, cookie)` | ||
|
||
Appends a cookie to the `Set-Cookie` header. | ||
|
||
```js | ||
import { setCookie, Headers } from 'undici' | ||
|
||
const headers = new Headers() | ||
setCookie(headers, { name: 'undici', value: 'setCookie' }) | ||
|
||
console.log(headers.get('Set-Cookie')) // undici=setCookie | ||
``` | ||
|
||
Arguments: | ||
|
||
* **headers** `Headers` | ||
* **cookie** `Cookie` | ||
|
||
Returns: `void` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# Fetch | ||
|
||
Undici exposes a fetch() method starts the process of fetching a resource from the network. | ||
|
||
Documentation and examples can be found on [MDN](https://developer.mozilla.org/en-US/docs/Web/API/fetch). | ||
|
||
## File | ||
|
||
This API is implemented as per the standard, you can find documentation on [MDN](https://developer.mozilla.org/en-US/docs/Web/API/File) | ||
|
||
## FormData | ||
|
||
This API is implemented as per the standard, you can find documentation on [MDN](https://developer.mozilla.org/en-US/docs/Web/API/FormData) | ||
|
||
## Response | ||
|
||
This API is implemented as per the standard, you can find documentation on [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Response) | ||
|
||
## Request | ||
|
||
This API is implemented as per the standard, you can find documentation on [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Request) | ||
|
||
## Header | ||
|
||
This API is implemented as per the standard, you can find documentation on [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Headers) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
# Class: WebSocket | ||
|
||
> ⚠️ Warning: the WebSocket API is experimental and has known bugs. | ||
Extends: [`EventTarget`](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget) | ||
|
||
The WebSocket object provides a way to manage a WebSocket connection to a server, allowing bidirectional communication. The API follows the [WebSocket spec](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket). | ||
|
||
## `new WebSocket(url[, protocol])` | ||
|
||
Arguments: | ||
|
||
* **url** `URL | string` - The url's protocol *must* be `ws` or `wss`. | ||
* **protocol** `string | string[]` (optional) - Subprotocol(s) to request the server use. | ||
|
||
## Read More | ||
|
||
- [MDN - WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket) | ||
- [The WebSocket Specification](https://www.rfc-editor.org/rfc/rfc6455) | ||
- [The WHATWG WebSocket Specification](https://websockets.spec.whatwg.org/) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
'use strict' | ||
|
||
// https://wicg.github.io/cookie-store/#cookie-maximum-attribute-value-size | ||
const maxAttributeValueSize = 1024 | ||
|
||
// https://wicg.github.io/cookie-store/#cookie-maximum-name-value-pair-size | ||
const maxNameValuePairSize = 4096 | ||
|
||
module.exports = { | ||
maxAttributeValueSize, | ||
maxNameValuePairSize | ||
} |
Oops, something went wrong.