-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrest.js
62 lines (60 loc) · 1.79 KB
/
rest.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
//rest.js
//
var config = require("./SACSConfig");
var auth = require("./auth");
var Client = require('node-rest-client').Client;
var qs = require('querystring');
module.exports = {
get : function(request, response, eventEmitter) {
console.log("Rest's GET function: event=%s", request.event);
return auth.getAuthString()
.then(function(authData) {
var args = {
headers : {"Authorization":"Bearer " + authData},
parameters : request.query
};
var client = new Client();
var url = "";
if (request.directUrl !== null) {
url = request.directUrl;
args.parameters = null;
} else {
url = config.environment + request.service;
}
console.log("\t url: %s", url);
console.log(args);
return client.get(url, args, function(data, responseData) {
response[request.event] = data;
console.log("\t going on to event %s", request.nextEvent);
eventEmitter.emit(request.nextEvent);
});
});
},
post : function(request, response, eventEmitter) {
console.log("Rest's POST function: event=%s", request.event);
return auth.getAuthString()
.then(function(authData) {
var args = {
headers : {Authorization:"Bearer " + authData,
"Content-Type":"application/json",
Accept:"*/*"
},
data : request.query
};
var client = new Client();
var url = "";
if (request.directUrl !== null) {
url = request.directUrl;
args.parameters = null;
} else {
url = config.environment + request.service;
}
console.log("\t url: %s", url);
return client.post(url, args, function(data, responseData) {
response[request.event] = data;
console.log("\t going on to event %s", request.nextEvent);
eventEmitter.emit(request.nextEvent);
});
});
}
};