# setheader

> Protect headers from being overridden before they are written to response.

Latest version **1.0.2** (published 2019-09-16) · MIT license · 0 weekly downloads

## Install

```sh
npm install setheader
pnpm add setheader
yarn add setheader
bun add setheader
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.2 |
| Published | 2019-09-16 |
| First published | 2014-03-07 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 5.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 2 |
| Author | Arnout Kazemier |
| Maintainers | 3rdeden, v1 |
| Keywords | setHeader, headers, sticky-headers, protected-header, protect |

## Links

- npm: https://www.npmjs.com/package/setheader
- Repository: https://github.com/3rd-Eden/setHeader
- Issues: https://github.com/3rd-Eden/setHeader/issues
- npm.io page: https://npm.io/package/setheader

## Dependencies (1)

- [diagnostics](https://npm.io/package/diagnostics.md) 1.x.x

## Recent versions

- 1.0.2 (latest) — 2019-09-16
- 1.0.1 — 2018-07-17
- 1.0.0 — 2018-06-15
- 0.0.4 — 2014-03-18
- 0.0.3 — 2014-03-07
- 0.0.2 — 2014-03-07
- 0.0.1 — 2014-03-07
- 0.0.0 — 2014-03-07

## README

# setHeader

[![Build Status](https://travis-ci.org/3rd-Eden/setHeader.png?branch=master)](https://travis-ci.org/3rd-Eden/setHeader)

This module is an alternate way of setting headers in your node applications.
Node doesn't have any protection or ways to prevent your previously set headers
from being overridden. So just because you set a `X-Powered-By` or
`X-Frame-Options` header it doesn't mean that this exact header will eventually
be written to the response. It could be that you have a middleware layer that
silently modified the header. This module attempts to prevent that from
happening by making the set property `readOnly`.

## Installation

```
npm install --save setheader
```

## Usage

The following snippet should make it clear:

```js
'use strict';

var setHeader = require('setheader');

//
// Create a basic http server just to illustrate the example usage here..
//
require('http').createServer(function (req, res) {
  setHeader(res, 'X-Frame-Options', 'DENY');

  res.end('(\/)(;,,;)(\/)');
}).listen(8080);
```

As you can see in the example above the `setHeader` method receives **3**
required arguments:

1. `res`, The HTTP Response instance of your HTTP server server.
2. `name`, The name of the header it needs to set.
3. `value`, The value of the header that is set.

## License

MIT

---
_Source: https://npm.io/package/setheader · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
