50 lines
1.5 KiB
JavaScript
50 lines
1.5 KiB
JavaScript
var historyJson = {};
|
|
const maxIterations = 200;
|
|
|
|
function getHistoryData(){
|
|
$.getJSON(host + '/api/event/' + clientUUID, function(data){
|
|
historyJson = data;
|
|
displayHistory();
|
|
});
|
|
}
|
|
|
|
function historyToHtml(){
|
|
var innerHTML = '';
|
|
var iterations = historyJson.length <= maxIterations ? historyJson.length : maxIterations;
|
|
for(let i=0; i<iterations; i++){
|
|
let style = i%2==0 ? ' class="even"' : '';
|
|
innerHTML += '<tr' + style + '>' +
|
|
'<td>' + parseTimeStamp(historyJson[i].dateTimeStamp) + '</td>' +
|
|
'<td>' + historyJson[i].httpMethod + '</td>' +
|
|
'<td>' + parseRequestBody(historyJson[i].requestBody, i) + '</td>' +
|
|
'<td> <button id="'+i+'" class="showHeaderButton" onClick="showHeadersHistory(this);"> Show headers </button> </td>' +
|
|
'</tr>';
|
|
}
|
|
return innerHTML;
|
|
}
|
|
|
|
function parseRequestBody(requestBody,i){
|
|
return requestBody.length == 0 ?
|
|
"No request body" :
|
|
'<button id="'+i+'" class="showRequestBodyButton" onClick="showRequestBody(this);"> Show request body </button>'
|
|
}
|
|
|
|
function parseTimeStamp(timeStamp){
|
|
return timeStamp.substring(0,19).replace('T',' ');
|
|
}
|
|
|
|
function parseHeaders(pos){
|
|
parsedJson = new Map();
|
|
headers = historyJson[pos].headers
|
|
Object.keys( headers ).forEach(
|
|
(jsonKey) => {
|
|
parsedJson.set( jsonKey , headers[jsonKey] );
|
|
}
|
|
)
|
|
return parsedJson;
|
|
}
|
|
|
|
function displayHistory(){
|
|
$('#historyTable tbody').html(historyToHtml());
|
|
}
|