mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Parameterizing Content-Type and Accept headers.
This commit is contained in:
parent
37b6161bc6
commit
bb33b4ea12
@ -30,11 +30,13 @@ var result;
|
||||
|
||||
if (uriMatcher.match("/{context}/api/invoker/execute/")) {
|
||||
var method = request.getContent().actionMethod;
|
||||
var targetURL = devicemgtProps.httpsURL + request.getContent().actionUrl;
|
||||
var targetURL = getTargetUrl(devicemgtProps.httpsURL, request.getContent().actionUrl);
|
||||
var payload = request.getContent().actionPayload;
|
||||
var contentType = request.getHeader(constants.CONTENT_TYPE_IDENTIFIER);
|
||||
var acceptType = request.getHeader(constants.ACCEPT_IDENTIFIER);
|
||||
if (method == undefined && payload == undefined) {
|
||||
method = parse(request.getContent()).actionMethod;
|
||||
targetURL = devicemgtProps.httpsURL + parse(request.getContent()).actionUrl;
|
||||
targetURL = getTargetUrl(devicemgtProps.httpsURL, parse(request.getContent()).actionUrl);
|
||||
payload = parse(request.getContent()).actionPayload;
|
||||
}
|
||||
try {
|
||||
@ -48,7 +50,9 @@ if (uriMatcher.match("/{context}/api/invoker/execute/")) {
|
||||
function (responsePayload) {
|
||||
response.status = responsePayload.status;
|
||||
response.content = responsePayload.responseText;
|
||||
});
|
||||
},
|
||||
contentType,
|
||||
acceptType);
|
||||
break;
|
||||
case constants.HTTP_POST:
|
||||
var responseData = serviceInvokers.XMLHttp.post(
|
||||
@ -59,7 +63,9 @@ if (uriMatcher.match("/{context}/api/invoker/execute/")) {
|
||||
function (responsePayload) {
|
||||
response.status = responsePayload.status;
|
||||
response.content = responsePayload.responseText;
|
||||
});
|
||||
},
|
||||
contentType,
|
||||
acceptType);
|
||||
break;
|
||||
case constants.HTTP_PUT:
|
||||
var responseData = serviceInvokers.XMLHttp.put(
|
||||
@ -70,19 +76,22 @@ if (uriMatcher.match("/{context}/api/invoker/execute/")) {
|
||||
function (responsePayload) {
|
||||
response.status = responsePayload.status;
|
||||
response.content = responsePayload.responseText;
|
||||
});
|
||||
},
|
||||
contentType,
|
||||
acceptType);
|
||||
break;
|
||||
case constants.HTTP_DELETE:
|
||||
var responseData =
|
||||
serviceInvokers.XMLHttp.delete(
|
||||
targetURL, function (responsePayload) {
|
||||
response.status = 200;
|
||||
response.content = responsePayload;
|
||||
},
|
||||
function (responsePayload) {
|
||||
response.status = responsePayload.status;
|
||||
response.content = responsePayload.responseText;
|
||||
});
|
||||
var responseData = serviceInvokers.XMLHttp.delete(
|
||||
targetURL, function (responsePayload) {
|
||||
response.status = 200;
|
||||
response.content = responsePayload;
|
||||
},
|
||||
function (responsePayload) {
|
||||
response.status = responsePayload.status;
|
||||
response.content = responsePayload.responseText;
|
||||
},
|
||||
contentType,
|
||||
acceptType);
|
||||
break;
|
||||
}
|
||||
} catch (e) {
|
||||
@ -90,4 +99,12 @@ if (uriMatcher.match("/{context}/api/invoker/execute/")) {
|
||||
}
|
||||
}
|
||||
|
||||
function getTargetUrl(serverUrl, actionUrl){
|
||||
if(actionUrl == undefined || actionUrl.lastIndexOf("http", 0) === 0){
|
||||
return actionUrl;
|
||||
} else {
|
||||
return serverUrl + actionUrl;
|
||||
}
|
||||
}
|
||||
|
||||
%>
|
||||
|
||||
@ -54,11 +54,17 @@ var backendServiceInvoker = function () {
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
* @param count a counter which hold the number of recursive execution
|
||||
*/
|
||||
privateMethods.execute = function (method, url, successCallback, errorCallback, payload, count) {
|
||||
privateMethods.execute = function (method, url, successCallback, errorCallback, payload, count, contentType, acceptType) {
|
||||
var xmlHttpRequest = new XMLHttpRequest();
|
||||
xmlHttpRequest.open(method, url);
|
||||
xmlHttpRequest.setRequestHeader(constants.CONTENT_TYPE_IDENTIFIER, constants.APPLICATION_JSON);
|
||||
xmlHttpRequest.setRequestHeader(constants.ACCEPT_IDENTIFIER, constants.APPLICATION_JSON);
|
||||
if(!contentType){
|
||||
contentType = constants.APPLICATION_JSON;
|
||||
}
|
||||
if(!acceptType){
|
||||
acceptType = constants.APPLICATION_JSON;
|
||||
}
|
||||
xmlHttpRequest.setRequestHeader(constants.CONTENT_TYPE_IDENTIFIER, contentType);
|
||||
xmlHttpRequest.setRequestHeader(constants.ACCEPT_IDENTIFIER, acceptType);
|
||||
if (IS_OAUTH_ENABLED) {
|
||||
var accessToken = privateMethods.getAccessToken();
|
||||
if (!accessToken) {
|
||||
@ -98,9 +104,9 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
privateMethods.initiateXMLHTTPRequest = function (method, url, successCallback, errorCallback, payload) {
|
||||
privateMethods.initiateXMLHTTPRequest = function (method, url, successCallback, errorCallback, payload, contentType, acceptType) {
|
||||
if (privateMethods.getAccessToken()) {
|
||||
return privateMethods.execute(method, url, successCallback, errorCallback, payload, 0);
|
||||
return privateMethods.execute(method, url, successCallback, errorCallback, payload, 0, contentType, acceptType);
|
||||
}
|
||||
};
|
||||
|
||||
@ -112,7 +118,7 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
privateMethods.initiateHTTPClientRequest = function (method, url, successCallback, errorCallback, payload) {
|
||||
privateMethods.initiateHTTPClientRequest = function (method, url, successCallback, errorCallback, payload, contentType, acceptType) {
|
||||
var HttpClient = Packages.org.apache.commons.httpclient.HttpClient;
|
||||
var httpMethodObject;
|
||||
switch (method) {
|
||||
@ -138,11 +144,11 @@ var backendServiceInvoker = function () {
|
||||
var Header = Packages.org.apache.commons.httpclient.Header;
|
||||
var header = new Header();
|
||||
header.setName(constants.CONTENT_TYPE_IDENTIFIER);
|
||||
header.setValue(constants.APPLICATION_JSON);
|
||||
header.setValue(contentType);
|
||||
httpMethodObject.addRequestHeader(header);
|
||||
header = new Header();
|
||||
header.setName(constants.ACCEPT_IDENTIFIER);
|
||||
header.setValue(constants.APPLICATION_JSON);
|
||||
header.setValue(acceptType);
|
||||
httpMethodObject.addRequestHeader(header);
|
||||
if (IS_OAUTH_ENABLED) {
|
||||
var accessToken = privateMethods.getAccessToken();
|
||||
@ -226,8 +232,8 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicXMLHTTPInvokers.get = function (url, successCallback, errorCallback) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_GET, url, successCallback, errorCallback);
|
||||
publicXMLHTTPInvokers.get = function (url, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_GET, url, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
|
||||
/**
|
||||
@ -237,8 +243,8 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicXMLHTTPInvokers.post = function (url, payload, successCallback, errorCallback) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_POST, url, successCallback, errorCallback, payload);
|
||||
publicXMLHTTPInvokers.post = function (url, payload, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_POST, url, successCallback, errorCallback, payload, contentType, acceptType);
|
||||
};
|
||||
|
||||
/**
|
||||
@ -248,8 +254,8 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicXMLHTTPInvokers.put = function (url, payload, successCallback, errorCallback) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_PUT, url, successCallback, errorCallback, payload);
|
||||
publicXMLHTTPInvokers.put = function (url, payload, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_PUT, url, successCallback, errorCallback, payload, contentType, acceptType);
|
||||
};
|
||||
|
||||
/**
|
||||
@ -258,8 +264,8 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicXMLHTTPInvokers.delete = function (url, successCallback, errorCallback) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_DELETE, url, successCallback, errorCallback);
|
||||
publicXMLHTTPInvokers.delete = function (url, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.initiateXMLHTTPRequest(constants.HTTP_DELETE, url, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
|
||||
/**
|
||||
@ -281,8 +287,8 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicHTTPClientInvokers.get = function (url, successCallback, errorCallback) {
|
||||
return privateMethods.initiateHTTPClientRequest(constants.HTTP_GET, url, successCallback, errorCallback);
|
||||
publicHTTPClientInvokers.get = function (url, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.initiateHTTPClientRequest(constants.HTTP_GET, url, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
|
||||
/**
|
||||
@ -292,9 +298,9 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicHTTPClientInvokers.post = function (url, payload, successCallback, errorCallback) {
|
||||
publicHTTPClientInvokers.post = function (url, payload, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.
|
||||
initiateHTTPClientRequest(constants.HTTP_POST, url, successCallback, errorCallback, payload);
|
||||
initiateHTTPClientRequest(constants.HTTP_POST, url, successCallback, errorCallback, payload, contentType, acceptType);
|
||||
};
|
||||
|
||||
/**
|
||||
@ -304,8 +310,8 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicHTTPClientInvokers.put = function (url, payload, successCallback, errorCallback) {
|
||||
return privateMethods.initiateHTTPClientRequest(constants.HTTP_PUT, url, successCallback, errorCallback, payload);
|
||||
publicHTTPClientInvokers.put = function (url, payload, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.initiateHTTPClientRequest(constants.HTTP_PUT, url, successCallback, errorCallback, payload, contentType, acceptType);
|
||||
};
|
||||
|
||||
/**
|
||||
@ -314,8 +320,8 @@ var backendServiceInvoker = function () {
|
||||
* @param successCallback a function to be called if the respond if successful.
|
||||
* @param errorCallback a function to be called if en error is reserved.
|
||||
*/
|
||||
publicHTTPClientInvokers.delete = function (url, successCallback, errorCallback) {
|
||||
return privateMethods.initiateHTTPClientRequest(constants.HTTP_DELETE, url, successCallback, errorCallback);
|
||||
publicHTTPClientInvokers.delete = function (url, successCallback, errorCallback, contentType, acceptType) {
|
||||
return privateMethods.initiateHTTPClientRequest(constants.HTTP_DELETE, url, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
|
||||
var publicInvokers = {};
|
||||
|
||||
@ -22,33 +22,39 @@ var invokerUtil = function () {
|
||||
|
||||
var END_POINT = window.location.origin+"/devicemgt/api/invoker/execute/";
|
||||
|
||||
module.get = function (url, successCallback, errorCallback) {
|
||||
module.get = function (url, successCallback, errorCallback, contentType, acceptType) {
|
||||
var payload = null;
|
||||
execute("GET", url, payload, successCallback, errorCallback);
|
||||
execute("GET", url, payload, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
module.post = function (url, payload, successCallback, errorCallback) {
|
||||
execute("POST", url, payload, successCallback, errorCallback);
|
||||
module.post = function (url, payload, successCallback, errorCallback, contentType, acceptType) {
|
||||
execute("POST", url, payload, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
module.put = function (url, payload, successCallback, errorCallback) {
|
||||
execute("PUT", url, payload, successCallback, errorCallback);
|
||||
module.put = function (url, payload, successCallback, errorCallback, contentType, acceptType) {
|
||||
execute("PUT", url, payload, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
module.delete = function (url, successCallback, errorCallback) {
|
||||
module.delete = function (url, successCallback, errorCallback, contentType, acceptType) {
|
||||
var payload = null;
|
||||
execute("DELETE", url, payload, successCallback, errorCallback);
|
||||
execute("DELETE", url, payload, successCallback, errorCallback, contentType, acceptType);
|
||||
};
|
||||
function execute (methoad, url, payload, successCallback, errorCallback) {
|
||||
function execute (methoad, url, payload, successCallback, errorCallback, contentType, acceptType) {
|
||||
if(contentType == undefined){
|
||||
contentType = "application/json";
|
||||
}
|
||||
if(acceptType == undefined){
|
||||
acceptType = "application/json";
|
||||
}
|
||||
var data = {
|
||||
url: END_POINT,
|
||||
type: "POST",
|
||||
contentType: "application/json",
|
||||
accept: "application/json",
|
||||
contentType: contentType,
|
||||
accept: acceptType,
|
||||
success: successCallback
|
||||
};
|
||||
console.log(data);
|
||||
var paramValue = {};
|
||||
paramValue.actionMethod = methoad;
|
||||
paramValue.actionUrl = url;
|
||||
paramValue.actionPayload = JSON.stringify(payload);
|
||||
paramValue.actionPayload = payload;
|
||||
data.data = JSON.stringify(paramValue);
|
||||
$.ajax(data).fail(function (jqXHR) {
|
||||
if (jqXHR.status == "401") {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user