proxy middleware to the Heroku API for express
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
README.md
index.js
package.json

README.md

heroku-proxy

heroku-proxy provides a proxy to the Heroku API for express apps. It is intended for use with node-heroku-bouncer.

Install

$ npm install heroku-proxy --save

Use

heroku-proxy assumes that it has the node-heroku-bouncer middleware in front of it. See the node-heroku-bouncer README for configuration instructions.

var express     = require('express');
var herokuProxy = require('heroku-proxy');
var app         = express();

// ...set up heroku-bouncer

app.use(herokuProxy());

By default, heroku-proxy will proxy all requests to /api/* of any method to api.heroku.com via https. You can override the default options by passing an object into the function returned by the heroku-proxy module:

app.use(herokuProxy({
  hostname: 'localhost',
  port    : 5001,
  prefix  : 'heroku-api',
  protocol: 'http'
}));

Now, a request to /heroku-api/apps will be proxied to http://localhost:5001/apps.

Options

Option Effect Default
log Log request details false
hostname The hostname to proxy requests to api.heroku.com
port The port on API host 443
prefix A prefix path where your Express app will be listening for API requests api
protocol The protocol to use https
whitelistHeaders Additional headers to whitelist to pass through to the API []
headerTransforms An object of keys (from) and values (to) to transform request headers before being sent to the API {}

Test

$ npm test