Как рассчитать время «Завершения», отображаемое на вкладке Chrome DevTools Network, из объекта HAR? - PullRequest
0 голосов
/ 08 марта 2019

Я создаю расширение Chrome.Я получил объект HAR с панели DevTools.Я могу получить время 'Load' и 'DOMContentLoaded' из объекта HAR,

pages: [
  {
    "startedDateTime": "2019-03-07T22:16:02.333Z",
    "id": "page_2",
    "title": "https://xxxx",
    "pageTimings": {
      "onContentLoad": 1635.4740000006132,
      "onLoad": 2318.5020000000804
    }
  }
]

Теперь, как мне рассчитать время 'Finish' из объекта HAR, которое составляет 7,75 с, как показано ниже?

enter image description here

1 Ответ

0 голосов
/ 11 марта 2019

Итак, я понял,

FinishTime = (lastRequestStartedTime + lastRequestDuration ) - (firstRequestStartedTime)

const requests=harObject.entries;

const lastRequest = requests.reduce(
    (a, b) => {
      return a.startedDateTime > b.startedDateTime ? a : b;
    }
  );

const firstRequest = requests.reduce(
    (a, b) => {
      return a.startedDateTime < b.startedDateTime ? a : b;
    }
  );

//Finish Time in Seconds
const finishTime=`((Date.parse(lastRequest.startedDateTime) + lastRequest.time
                  - Date.parse(firstRequest.startedDateTime))
                  / 1000).toFixed(2)
...