https-agent
v1.0.0
Published
Proxy aware HTTPS agent
Downloads
8,899
Maintainers
Readme
https-agent
HTTPS agent for Node with transparent proxy support
Creates a HTTPS agent that automatically handles proxy tunnelling using the https_proxy
environment variable. You can then plug the agent into your HTTP client of choice and make requests using SSL client authentication.
Installation
npm install https-agent
Usage
var httpsAgent = require('https-agent');
var fs = require('fs');
var agent = httpsAgent({
pfx: fs.readFileSync('/path/to/client.p12'),
passphrase: 'client'
});
All of the standard TLS options are supported when creating an agent. Use the pfx
and passphrase
options for a certificate in PKCS12 format or the cert
and key
options for separate certificate and key files.
Examples
Usage with https.get
var httpsAgent = require('https-agent');
var fs = require('fs');
var https = require('https');
var agent = httpsAgent({
pfx: fs.readFileSync('/path/to/client.p12'),
passphrase: 'client'
});
var options = {
protocol: 'https:',
hostname: 'www.example.com',
port: 443,
agent: agent
}
https.get(options, function (res) {
res.on('data', function (data) {
console.log(data.toString());
});
});
Usage with request
var httpsAgent = require('https-agent');
var fs = require('fs');
var request = require('request');
var agent = httpsAgent({
pfx: fs.readFileSync('/path/to/client.p12'),
passphrase: 'client'
});
request('https://www.example.com', {agent: agent, proxy: false}, function (err, res, body) {
console.log(body);
});
Usage with node-rest-client
var httpsAgent = require('https-agent');
var fs = require('fs');
var Client = require('node-rest-client').Client;
var agent = httpsAgent({
pfx: fs.readFileSync('/path/to/client.p12'),
passphrase: 'client'
});
var client = new Client({
connection: {
agent: agent
}
});
client.get('https://www.example.com', function (body, res) {
console.log(body);
});