From edfa6cad0c2d5f4488504b3e1627f796c535be7a Mon Sep 17 00:00:00 2001 From: Jayden Seric Date: Thu, 9 Nov 2017 17:54:17 +1100 Subject: [PATCH] Network error handling fixes. Fixes https://github.com/jaydenseric/apollo-upload-client/issues/38. --- changelog.md | 5 +++++ src/index.mjs | 17 ++++++----------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/changelog.md b/changelog.md index a7d46fa..6e6aaec 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,10 @@ # apollo-upload-client change log +## Next + +* Corrected network error handling, fixing + [#38](https://github.com/jaydenseric/apollo-upload-client/issues/38). + ## 6.0.0-beta.2 * Match the `apollo-link-http` API and support setting `credentials` and diff --git a/src/index.mjs b/src/index.mjs index b025cc9..30f45bf 100644 --- a/src/index.mjs +++ b/src/index.mjs @@ -63,20 +63,15 @@ export const createUploadLink = ( } linkFetch(uri, fetchOptions) - .then(response => - response.json().then(result => { - if (!response.ok) - throw new Error( - `Error ${response.status}: ${response.statusText}.` - ) - - return result - }) - ) + .then(response => { + if (!response.ok) + throw new Error(`${response.status} (${response.statusText})`) + return response.json() + }) .then(result => { observer.next(result) observer.complete() }) - .catch(observer.error) + .catch(error => observer.error(error)) }) )