2016-07-14 4 views
0

Я продолжаю получать ошибку «неожиданного конца вывода» на response.json(). Неужели я не понимаю, что я делаю ниже?Ошибка «неожиданного конца вывода» на response.json()

Promise.all([requestOne, requestTwo]) 
    .then(responses => { 
    responses.reduce((promise,response) => { 
     return promise.then(() => { 
      return response.json() 
     }).then(result => result) 
    }, Promise.resolve()); 
    }) 
+0

Что '' requestOne' и requestTwo'? Какова цель '.then (result => result)'? – guest271314

+0

'fetch' возвращает объект' Promise'; почему вы используете '.reduce()', 'Promise.resolve()'? Ответ от сервера 'JSON'? Не знаете, какой ожидаемый результат? Можете ли вы создать jsfiddle http://jsfiddle.net для воспроизведения проблемы? – guest271314

+0

requestOne и RequestTwo - это запросы, которые возвращают json. Я получаю ответы, затем мне приходится разбираться с json. .json() возвращает другое обещание, которое мне нужно для запуска в серии. использование сокращения позволяет мне их связывать. Но response.json() возвращает эту ошибку. https://esnextb.in/?gist=ad8d068078fc762c1434358357fdb0d3 – groovy

ответ

1

Редактировать, Обновлено

Этот вопрос {mode:"no-cors"} установка на fetch. Запасной {method: "get"} для {mode:"no-cors"} на fetch вызова

plnkr http://plnkr.co/edit/ymKEeudclUp5ydSaijoP?p=preview

+0

plnkr http://plnkr.co/edit/ymKEeudclUp5ydSaijoP?p=preview – guest271314

+0

Я приму ответ, но мое решение действительно сработало. Проблема заключалась в том, что я использую no-cors, который не должен играть хорошо. Я не уверен, что карта сохранит порядок правильно? Слишком занят, чтобы смотреть сейчас. – groovy

+0

Если возвращение результатов в порядке - это требование, вы можете использовать 'Array.prototype.shift()' без 'Promise.all()', см. Http://stackoverflow.com/questions/35777616/executing-function-on-array -using-callbacks – guest271314