emit an error event when a request fails

should it be just `error`, not `requestError`?