代码之家  ›  专栏  ›  技术社区  ›  icicleking

如何迭代响应对象

  •  0
  • icicleking  · 技术社区  · 6 年前

    fetch Promise.reject 如果有错误。

    function fetchErrorHandler(url, options) {
        if (options == null) options = {};
        if (options.credentials == null) options.credentials = 'same-origin';
        return fetch(url, options).then( response => {
            if (!response.ok) {
                return Promise.reject(response);
            }
            return response;
        })
    }
    fetch('/cool/api/')
        .then(res => res.json())
        .then(body => { //...})
        .catch(error => {
            // Let's do something smart.
        });
    

    我想做的是迭代 Response 对象并保存键:值对。所以在那个捕手区里面的一些人:

    for (let item in error) {
        if (error.hasOwnProperty(item)) {
            log(error[item] + ': ' + item);    
         }
     }
    

    …但这不会产生任何结果。

    error 实际上是另一个承诺,在这种情况下我需要做些别的。或者,是 回应 对象没有它的 OwnProperty 不管怎样,我都不知道如何得到我想要的数据。有什么线索吗?

    顺便说一句,我也试过 Object.keys(error) 同样的事情发生了

    0 回复  |  直到 6 年前
    推荐文章