async __attemptParseFailedResponseBody(response) {
    let body;
    try {
      body = await this.__parseBody(response);
    } catch (e) {
      // no need to throw/log, failed responses often don't have a body
    }
    return body;
  }
@param {Response} response
@returns {Promise<string|Object|undefined>}