blob: fbc6d21834355d215921ef2c0a1d4f94c36f49c0 [file] [log] [blame]
'use strict'
var request = require('request'),
helpers = require('../helpers'),
UsergridResponse = require('../lib/response'),
util = require('util'),
_ = require('underscore')
var UsergridRequest = function(options, callback) {
callback = helpers.cb(callback)
if (typeof options.type !== 'string') {
throw new Error('"type" (or "collection") parameter is required when making a request')
}
var headers = helpers.userAgent
if (options.client.appAuth && options.client.appAuth.isTokenValid) {
_.extend(headers, {
authorization: util.format("Bearer %s", options.client.appAuth.token)
})
}
request(helpers.buildUrl(options), {
headers: headers,
body: options.body,
json: true,
method: options.method
}, function(error, response) {
response = new UsergridResponse(response)
callback(error, response)
})
}
module.exports = UsergridRequest