oauth-reverse-proxy v1.0.1
oauth-reverse-proxy
Express/Connect middleware for reverse proxying OAuth 1 web services. Can be used to perform OAuth-protected service calls without exposing consumer and token key pairs on the client side.
npm install oauth-reverse-proxy
Usage
var app = require('express')();
var when = require('when');
app.use(require('oauth-reverse-proxy').oauth1({
endpoint: '/api/',
target: 'https://api.twitter.com/1.1/',
provider: function(req) {
return when({
consumerKey: 'eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY',
consumerSecret: '2EEfA6BG3ly3sR3RjE0IBSnlQu4ZrUzPiYKmrkVU',
tokenKey: 'Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik',
tokenSecret: 'Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM'
});
},
credentials: {
consumerKey: 'eWudHldSbIaelX7swmsiHImEL4KinwaGloHANdrY',
consumerSecret: '2EEfA6BG3ly3sR3RjE0IBSnlQu4ZrUzPiYKmrkVU',
tokenKey: 'Z6eEdO8MOmk394WozF5oKyuAv855l4Mlqo7hhlSLik',
tokenSecret: 'Kd75W4OQfb2oJTV0vzGzeXftVAwgMnEK9MumzYcM'
}
}));http://mywebsite.com/api/statuses/user_timeline.json will proxy https://api.twitter.com/1.1/statuses/user_timeline.json.
endpoint: Website path that will be used as an endpoint for API requests.
target: Target API URL.
provider: OAuth credentialsprovider. A Function that will be invoked for each API request. Takes req argument with the current request object. Must return a promise with a credentials object, {} for unauthorized API calls or null to send a 401 error to a client.
credentials (optional): static OAuth credentials to use for all requests.
signatureMethod (optional): OAuth signature method. Defaults to HMAC-SHA1.
keepCookies (optional): Keep cookies header in API requests. Defaults to false.