Extends superagent or supertest with hawk:
var superagent = require('superagent');
var addHawk = require('superagent-hawk');
var request = addHawk(superagent);
request
.get('http://things.com')
.hawk(credential)
.end(function (res) {
console.log('yay:', res.body);
});
Install with component:
$ component install CrowdProcess/superagent-hawk
And with npm:
$ npm install superagent-hawk
The normal superagent things,
plus hawk
:
var superagent = require('superagent');
var addHawk = require('superagent-hawk');
var request = addHawk(superagent);
var credential = {
"id": "50e17602-f044-41cb-8e5f-ae634cc15fb0",
"key": "I2Yiq3UGAUR6Oztnv/3JJK6T0clmGTX14d/TJ1qNKio=",
"algorithm": "sha256"
};
var options = { // look at https://github.com/hueniverse/hawk/blob/master/lib/browser.js#L26
localtimeOffsetMsec: 500
};
request
.get('http://resource.com')
.hawk(credential, options) // options is, well, optional
.end(function (res) {
console.log(res.body);
});
and bewit
:
var superagent = require('superagent');
var addHawk = require('superagent-hawk');
var request = addHawk(superagent);
var bewit = "ZDA1Mzg4Y2UtMGRmYi00NWFlLThlODMtY2Q2MmJlZGE0MDNlXDEzNzM0Njc3NDNcNnJyUjA3QWdOQkVWVHlENCsxOFZTZ2M1OERqWmxrc3VzVHZoOUpLM0JzQT1c";
request
.get('http://resource.com')
.bewit(bewit)
.end(function (res) {
console.log(res.body);
});
var options = {
localtimeOffsetMsec: 500,
verifyResponse: true
};
var credential = {
"id": "50e17602-f044-41cb-8e5f-ae634cc15fb0",
"key": "I2Yiq3UGAUR6Oztnv/3JJK6T0clmGTX14d/TJ1qNKio=",
"algorithm": "sha256"
};
request
.get('http://resource.com')
.hawk(credential, options) // options is, well, optional
.end(function (res) {
if (res.error) {
console.log('Server response verification has failed');
}
console.log(res.body);
});
MIT