2015-12-29 2 views
0

Работая над приложением WSE2 UES для проекта панели мониторинга, необходимо вызвать REST api с использованием метода GET с данными HEADER. (вар заголовки = { "Authorization", getSecureToken};)Jaggeryjs: Ajax call Метод GET

http://jaggeryjs.org/documentation.jag?api=get не дает достаточно информации

<%  
    var getSecureToken = session.get("wso2-token");  
    var headers ={"Authorization",getSecureToken};  
    var userListUrl = "https://00.000.00.00:09000/users/1.0.0/users/list";  
    var userListData = get(userListUrl,headers,"json");  
    log.info(userListData); 
%> 

Любая помощь будет оценена. :-)

Update: метод GET функция:

function FnMakeRequestGETCall(URL, METHOD, BASICAUTH, CONTENTTYPE, ACCEPTTYPE, INPUTDATA){ 
     var VarBasicAuthCode = session.get('wso2-token'); 
     xhr = new XMLHttpRequest(); 
     xhr.open(METHOD, URL); 
     xhr.setRequestHeader("Authorization" , VarBasicAuthCode); 
     xhr.setRequestHeader("Content-Type", CONTENTTYPE); 
     xhr.setRequestHeader("Accept", ACCEPTTYPE); 
     xhr.send(); 
     var VarResponse = xhr.responseText; 
     return VarResponse; 
    } 

var userListUrl = "https://99.999.99.999:9445/users/1.0.0/users/list"; 
var headers ={"Authorization",getSecureToken}; 

var usersList = FnMakeRequestGETCall(userListUrl,"GET","Basic RlN4S2RrZEpNN3VaYWhHN0NFcEtlaTZEa3RzYTpXbmUxd29seHp2UTNSQ2RZbXhUUTJ2WkJTd0Fh","application/x-www-form-urlencoded; charset=UTF-8","application/json; charset=utf-8",""); 

log.info(usersList); 

ответ

0

Я думаю, что вы можете использовать Get() вместо того, чтобы создать новый XMLHttpRequest(). Я думаю, что проблема вашего get() в том, что она асинхронна. Таким образом, переменная usrsList не получает сразу никакого значения. Итак, что вам в основном нужно сделать, это использовать функцию get() и передать функцию успеха.

Общее использование get() выполняется ниже.

get(url[, data][, headers][, data-type][, success(data, xhr)]) 

В вашем случае get() должен выглядеть следующим образом.

get(userListUrl,null,headers,'text',function(usersList,xhr){ 
    log.info(usersList); 
}); 

Если вы использовали XMLHttpRequest() из-за возможности добавления нескольких заголовков, вы можете сделать то же самое с get. что вам нужно сделать, это добавить их в объект заголовков.

var headers ={ 
    "Authorization":VarBasicAuthCode, 
    "Content-Type" : CONTENTTYPE, 
    "Accept" : ACCEPTTYPE 
}; 

пожалуйста жужжание меня если это не сработало.

(Примечание: я думаю, вы добавили свой IP-адрес с обновлением вопроса ...: D)