socks5-https-client

    1.2.1 • Public • Published

    SOCKS5 HTTPS Client

    Build Status

    SOCKS v5 HTTPS client implementation in JavaScript for Node.js.

    var shttps = require('socks5-https-client');
     
    shttps.get({
        hostname: 'encrypted.google.com',
        path: '/',
        rejectUnauthorized: true // This is the default.
    }, function(res) {
        res.setEncoding('utf8');
        res.on('readable', function() {
            console.log(res.read()); // Log response to console.
        });
    });

    Specify the socksHost and socksPort options if your SOCKS server isn't running on localhost:1080. Tor runs its SOCKS server on port 9050 by default, for example.

    Username and password authentication is supported with the socksUsername and socksPassword options.

    You may also pass a URL as the first argument to get or request, which will be parsed using url.parse.

    Using with Tor

    Works great for making HTTPS requests through Tor.

    Make sure a Tor server is running locally and run node example/tor https://check.torproject.org/ to test.

    Using with Request

    To use with Request, just pass a reference to the Agent constructor..

    var Agent = require('socks5-https-client/lib/Agent');
     
    request({
        url: 'https://encrypted.google.com/',
        strictSSL: true,
        agentClass: Agent,
        agentOptions: {
            socksHost: 'my-tor-proxy-host', // Defaults to 'localhost'.
            socksPort: 9050 // Defaults to 1080.
        }
    }, function(err, res) {
        console.log(err || res.body);
    });

    HTTP

    This client only provides support for making HTTPS requests. See socks5-http-client for an HTTP implementation.

    License

    Copyright © 2013 Matthew Caruana Galizia, licensed under an MIT license.

    Install

    npm i socks5-https-client

    DownloadsWeekly Downloads

    30,803

    Version

    1.2.1

    License

    MIT

    Last publish

    Collaborators

    • mcg