JS: Не может ли прокси отраженный объект? - PullRequest
0 голосов
/ 21 марта 2020

Читая о Proxy. Я думал о тестировании на XMLHttpRequest, чтобы перехватить все запросы xhr документа. Итак, я сначала Proxy ed XMLHttpRequest с construct перехватываю на Прокси-сервер только что созданный экземпляр, поэтому я мог видеть, будет ли установлен или вызван какой-либо onload. Затем получите ответ.

Но всякий раз, когда я пытаюсь прокси Отраженного XMLHttpRequest, я получаю ОШИБКУ. Я понятия не имею, что это значит, но до сих пор не могу понять. Этот Вопрос кажется похожим. Но мои головы кружатся. Итак, кто-нибудь может мне помочь с этим? Я не очень знаком с новой спецификацией class (пробовал несколько раз, но не очень). Что вызывает это ?? Итак, есть ли способ прокси отраженного объекта ??

function observer(x) {
  return new Proxy(x, {
    construct(a, b, c) {
      return observer(Reflect.construct(a, b, c));
    },
    set(a, b, c) {
      console.error(b, c);
    }
  })
}

XMLHttpRequest = observer(XMLHttpRequest);

let xhr = new XMLHttpRequest;
xhr.open('GET', 'http://example.com/', 1); // TypeError: 'open' called on an object that does not implement interface XMLHttpRequest.
xhr.onload = e => console.warn(e.target.status);
xhr.send();

Заранее спасибо.

...