product-admin
Version:
EA admin screens
55 lines (43 loc) • 1.41 kB
JavaScript
;
var request = require('request');
var proxy = require('express-request-proxy');
var materialService = process.env.materialService || "https://material-service-stuf-qa.run.asv-pr.ice.predix.io/products/v1/products";
var getTokenUrl = 'https://f7d26f4e-8979-4e89-9a2a-34a49646f11f.predix-uaa.run.asv-pr.ice.predix.io/oauth/token';
function tokenCall(cb) {
var options = {
headers: {
Authorization: 'Basic Ym1zX2VhX3NlcnZpY2U6N2ViMjlhNjE0MWUzNzhmNGQ0NjY1N2M1ZGE3YjRhMzQxMjUzOThlYjEzZTBmNDcz'
},
form: {
grant_type: 'client_credentials',
client_id: 'bms_ea_service'
}
};
request.post(getTokenUrl, options, cb);
}
function getProductsCall(cb, token) {
const tenant = 'e692e11f-6ec1-4ea3-a650-64ba415b6063';
var options = {
headers: {
Authorization: `Bearer ${token}`,
Tenant: tenant
}
};
request.get(materialService, options, cb);
}
var setRoute = function (app) {
app.get('/getProducts', function (req, res) {
tokenCall(function (err, httpResponse, body) {
let token = JSON.parse(body).access_token;
getProductsCall(function (err, httpResponse, body) {
var parsedBody = JSON.parse(body);
parsedBody._embedded.resource.map(e => {
e.active = Math.random() > 0.5 ? "true" : "false";
return e;
});
res.send(parsedBody);
}, token)
});
});
}
module.exports = setRoute;