added doga
This commit is contained in:
77
25_02_24/node_modules/@tinyhttp/vary/README.md
generated
vendored
Normal file
77
25_02_24/node_modules/@tinyhttp/vary/README.md
generated
vendored
Normal file
@@ -0,0 +1,77 @@
|
||||
# @tinyhttp/vary
|
||||
|
||||
[![Version][v-badge-url]][npm-url] [![Downloads][dl-badge-url]][npm-url] [![GitHub Workflow Status][gh-actions-img]][github-actions] [![Codecov][cov-badge-url]][cov-url]
|
||||
|
||||
> [`vary`](https://github.com/jshttp/vary) rewrite in TypeScript with ESM and CommonJS targets
|
||||
|
||||
Manipulate the HTTP Vary header
|
||||
|
||||
## Install
|
||||
|
||||
```sh
|
||||
pnpm i @tinyhttp/vary
|
||||
```
|
||||
|
||||
## API
|
||||
|
||||
```ts
|
||||
import { vary, append } from '@tinyhttp/vary'
|
||||
```
|
||||
|
||||
### `vary(res, field)`
|
||||
|
||||
Adds the given header `field` to the `Vary` response header of `res`.
|
||||
This can be a string of a single field, a string of a valid `Vary`
|
||||
header, or an array of multiple fields.
|
||||
|
||||
This will append the header if not already listed, otherwise leaves
|
||||
it listed in the current location.
|
||||
|
||||
```ts
|
||||
vary(res, 'Origin')
|
||||
```
|
||||
|
||||
### `append(header, field)`
|
||||
|
||||
Adds the given header `field` to the `Vary` response header string `header`.
|
||||
This can be a string of a single field, a string of a valid `Vary` header,
|
||||
or an array of multiple fields.
|
||||
|
||||
This will append the header if not already listed, otherwise leaves
|
||||
it listed in the current location. The new header string is returned.
|
||||
|
||||
```ts
|
||||
// Get header string appending "Origin" to "Accept, User-Agent"
|
||||
append('Accept, User-Agent', 'Origin')
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
||||
```ts
|
||||
import { createServer } from 'node:http'
|
||||
import { vary } from '@tinyhttp/vary'
|
||||
|
||||
createServer((req, res) => {
|
||||
// about to user-agent sniff
|
||||
vary(res, 'User-Agent')
|
||||
|
||||
const ua = req.headers['user-agent'] || ''
|
||||
const isMobile = /mobi|android|touch|mini/i.test(ua)
|
||||
|
||||
// serve site, depending on isMobile
|
||||
res.setHeader('Content-Type', 'text/html')
|
||||
res.end('You are (probably) ' + (isMobile ? '' : 'not ') + 'a mobile user')
|
||||
})
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
MIT © [v1rtl](https://v1rtl.site)
|
||||
|
||||
[v-badge-url]: https://img.shields.io/npm/v/@tinyhttp/vary.svg?style=for-the-badge&color=FF69B4&label=&logo=npm
|
||||
[npm-url]: https://www.npmjs.com/package/@tinyhttp/vary
|
||||
[cov-badge-url]: https://img.shields.io/coveralls/github/tinyhttp/vary?style=for-the-badge&color=FF69B4
|
||||
[cov-url]: https://coveralls.io/github/tinyhttp/vary
|
||||
[dl-badge-url]: https://img.shields.io/npm/dt/@tinyhttp/vary?style=for-the-badge&color=FF69B4
|
||||
[github-actions]: https://github.com/tinyhttp/vary/actions
|
||||
[gh-actions-img]: https://img.shields.io/github/actions/workflow/status/tinyhttp/vary/main.yml?branch=master&style=for-the-badge&color=FF69B4&label=&logo=github
|
||||
Reference in New Issue
Block a user