Невозможно получить доступ к ответу на XMLHttpRequest React Native - PullRequest
0 голосов
/ 29 ноября 2018

Я пытаюсь подключиться к удаленному API, и у меня все было хорошо, пока я не попытался получить доступ к ответу из моего XMLHttpRequest.Я могу console.log это, и это выглядит так:

Object {
  "bubbles": false,
  "cancelable": false,
  "currentTarget": XMLHttpRequest {
    "DONE": 4,
    "HEADERS_RECEIVED": 2,
    "LOADING": 3,
    "OPENED": 1,
    "UNSENT": 0,
    "_aborted": false,
    "_cachedResponse": undefined,
    "_hasError": false,
    "_headers": Object {},
    "_incrementalEvents": false,
    "_lowerCaseResponseHeaders": Object {
      "connection": "Keep-Alive",
      "content-length": "177",
      "content-type": "text/html; charset=UTF-8",
      "date": "Wed, 28 Nov 2018 23:29:58 GMT",
      "keep-alive": "timeout=5, max=100",
      "server": "Apache/2.4.33 (Unix) OpenSSL/1.0.2o PHP/7.2.7 mod_perl/2.0.8-dev Perl/v5.16.3",
      "x-powered-by": "PHP/7.2.7",
    },
    "_method": "GET",
    "_requestId": null,
    "_response": "REDACTED...BUT ITS A JSON ENCODED STRING HERE",
    "_responseType": "",
    "_sent": true,
    "_subscriptions": Array [],
    "_timedOut": false,
    "_trackingName": "unknown",
    "_url": "REDACTED",
    "readyState": 4,
    "responseHeaders": Object {
      "Connection": "Keep-Alive",
      "Content-Length": "177",
      "Content-Type": "text/html; charset=UTF-8",
      "Date": "Wed, 28 Nov 2018 23:29:58 GMT",
      "Keep-Alive": "timeout=5, max=100",
      "Server": "Apache/2.4.33 (Unix) OpenSSL/1.0.2o PHP/7.2.7 mod_perl/2.0.8-dev Perl/v5.16.3",
      "X-Powered-By": "PHP/7.2.7",
    },
    "responseURL": "REDACTED",
    "status": 200,
    "timeout": 0,
    "upload": XMLHttpRequestEventTarget {
      Symbol(listeners): Object {},
    },
    "withCredentials": true,
    Symbol(listeners): Object {
      "load": Object {
        "kind": 3,
        "listener": [Function anonymous],
        "next": null,
      },
    },
  },
  "eventPhase": 2,
  "isTrusted": false,
  "target": XMLHttpRequest {
    "DONE": 4,
    "HEADERS_RECEIVED": 2,
    "LOADING": 3,
    "OPENED": 1,
    "UNSENT": 0,
    "_aborted": false,
    "_cachedResponse": undefined,
    "_hasError": false,
    "_headers": Object {},
    "_incrementalEvents": false,
    "_lowerCaseResponseHeaders": Object {
      "connection": "Keep-Alive",
      "content-length": "177",
      "content-type": "text/html; charset=UTF-8",
      "date": "Wed, 28 Nov 2018 23:29:58 GMT",
      "keep-alive": "timeout=5, max=100",
      "server": "Apache/2.4.33 (Unix) OpenSSL/1.0.2o PHP/7.2.7 mod_perl/2.0.8-dev Perl/v5.16.3",
      "x-powered-by": "PHP/7.2.7",
    },
    "_method": "GET",
    "_requestId": null,
    "_response": "REDACTED...BUT AGAIN, JSON ENCODED STRING",
    "_responseType": "",
    "_sent": true,
    "_subscriptions": Array [],
    "_timedOut": false,
    "_trackingName": "unknown",
    "_url": "REDACTED",
    "readyState": 4,
    "responseHeaders": Object {
      "Connection": "Keep-Alive",
      "Content-Length": "177",
      "Content-Type": "text/html; charset=UTF-8",
      "Date": "Wed, 28 Nov 2018 23:29:58 GMT",
      "Keep-Alive": "timeout=5, max=100",
      "Server": "Apache/2.4.33 (Unix) OpenSSL/1.0.2o PHP/7.2.7 mod_perl/2.0.8-dev Perl/v5.16.3",
      "X-Powered-By": "PHP/7.2.7",
    },
    "responseURL": "REDACTED",
    "status": 200,
    "timeout": 0,
    "upload": XMLHttpRequestEventTarget {
      Symbol(listeners): Object {},
    },
    "withCredentials": true,
    Symbol(listeners): Object {
      "load": Object {
        "kind": 3,
        "listener": [Function anonymous],
        "next": null,
      },
    },
  },
  "timeStamp": 1543447798607,
  "type": "load",
  Symbol(stop_immediate_propagation_flag): false,
  Symbol(canceled_flag): false,
  Symbol(original_event): Object {
    "type": "load",
  },
}

Я не могу получить доступ ни к одному из значений в мысли объекта.Когда я пытаюсь проанализировать элемент _response объекта, я получаю сообщение об ошибке JSON (не могу проанализировать неопределенное).Но я вижу, что член существует прямо там.И я не могу разобрать весь объект, потому что он уже в JSON.Вот как теперь выглядит мой реагирующий нативный код:

  ajax.onload = req => {
    responseObject = JSON.parse(req._response);
  }

Вот мой вопрос ... Как я могу проанализировать _response член этого объекта XMLHttpRequest, сохраняя при этом мойСинтаксис жирной стрелки?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...