1.1.0 • Published 6 years ago

agent-options v1.1.0

Weekly downloads
5
License
MIT
Repository
github
Last release
6 years ago

As stated in the documentation for https.request:

The following additional options from tls.connect() are also accepted when using a custom Agent: ca, cert, ciphers, clientCertEngine, key, passphrase, pfx, rejectUnauthorized, secureProtocol, servername.

This module allows to modify other options, as well as to disable them. For example, SNI can be disabled by setting servername to null (or undefined).

Install

$ npm i agent-options

Usage

Examples

Performing https.request without SNI:

const https = require('https')
const makeAgent = require('agent-options')

const options = {
  host: 'example.com',
  port: 443,
  path: '/',
  agent: makeAgent({ servername: null })
}

const req = https.request(options, res => {
  res.on('data', data => {
    // ...
  })
  res.on('end', () => {
    // ...
  })
})

req.on('error', err => {
  // ...
})

req.end()

Same using got:

const got = require('got')
const makeAgent = require('agent-options')

got('example.com', { agent: makeAgent({ servername: null }) }).then(res => {
  // ...
}).catch(err => {
  // ...
})

Issues

  • Support agents other than https.Agent?
1.1.0

6 years ago

1.0.0

6 years ago