https-proxy-agent
An HTTP(s) proxy `http.Agent` implementation for HTTPS
Last updated 10 months ago by tootallnate .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ gnpm install https-proxy-agent 
SYNC missed versions from official npm registry.

https-proxy-agent

An HTTP(s) proxy http.Agent implementation for HTTPS

This module provides an http.Agent implementation that connects to a specified HTTP or HTTPS proxy server, and can be used with the built-in https module.

Specifically, this Agent implementation connects to an intermediary "proxy" server and issues the CONNECT HTTP method, which tells the proxy to open a direct TCP connection to the destination server.

Since this agent implements the CONNECT HTTP method, it also works with other protocols that use this method when connecting over proxies (i.e. WebSockets). See the "Examples" section below for more.

Examples

https module example

import * as https from 'https';
import { HttpsProxyAgent } from 'https-proxy-agent';

const agent = new HttpsProxyAgent('http://168.63.76.32:3128');

https.get('https://example.com', { agent }, (res) => {
  console.log('"response" event!', res.headers);
  res.pipe(process.stdout);
});

ws WebSocket connection example

import WebSocket from 'ws';
import { HttpsProxyAgent } from 'https-proxy-agent';

const agent = new HttpsProxyAgent('http://168.63.76.32:3128');
const socket = new WebSocket('ws://echo.websocket.org', { agent });

socket.on('open', function () {
  console.log('"open" event!');
  socket.send('hello world');
});

socket.on('message', function (data, flags) {
  console.log('"message" event! %j %j', data, flags);
  socket.close();
});

API

new HttpsProxyAgent(proxy: string | URL, options?: HttpsProxyAgentOptions)

The HttpsProxyAgent class implements an http.Agent subclass that connects to the specified "HTTP(s) proxy server" in order to proxy HTTPS and/or WebSocket requests. This is achieved by using the HTTP CONNECT method.

The proxy argument is the URL for the proxy server.

The options argument accepts the usual http.Agent constructor options, and some additional properties:

  • headers - Object containing additional headers to send to the proxy server in the CONNECT request.

Current Tags

  • 7.0.4                                ...           latest (10 months ago)

34 Versions

  • 7.0.4                                ...           10 months ago
  • 7.0.3                                ...           10 months ago
  • 7.0.2                                ...           a year ago
  • 7.0.1                                ...           a year ago
  • 7.0.0                                ...           2 years ago
  • 6.2.1                                ...           2 years ago
  • 6.2.0                                ...           2 years ago
  • 6.1.0                                ...           2 years ago
  • 6.0.0                                ...           2 years ago
  • 5.0.1                                ...           3 years ago
  • 5.0.0                                ...           5 years ago
  • 4.0.0                                ...           5 years ago
  • 2.2.4                                ...           5 years ago
  • 3.0.1                                ...           5 years ago
  • 2.2.3                                ...           5 years ago
  • 3.0.0                                ...           5 years ago
  • 2.2.2                                ...           5 years ago
  • 2.2.1                                ...           7 years ago
  • 2.2.0                                ...           7 years ago
  • 2.1.1                                ...           7 years ago
  • 2.1.0                                ...           7 years ago
  • 2.0.0                                ...           7 years ago
  • 1.0.0                                ...           9 years ago
  • 0.3.6                                ...           9 years ago
  • 0.3.5                                ...           10 years ago
  • 0.3.4                                ...           11 years ago
  • 0.3.3                                ...           11 years ago
  • 0.3.2                                ...           11 years ago
  • 0.3.0                                ...           11 years ago
  • 0.3.1                                ...           11 years ago
  • 0.2.0                                ...           11 years ago
  • 0.1.0                                ...           11 years ago
  • 0.0.2                                ...           11 years ago
  • 0.0.1                                ...           11 years ago

Copyright 2013 - present © cnpmjs.org | Home |