fetch中为什么要有两个then才可以正常获取数据



  •  fetch('http://172.168.1.27:9090/test/dish_getbyid.php')
    
        .then((response) => response.json())
        
        .then((responseData) => { console.log(responseData)});
            
    }
    

    想要请教的问题如下:

    1. 为什么要用两个then,才可以获取到我返回的内容,这两个then分别是干嘛的。
    2. 第一个then中的参数是一个repsonse对象,但在里面我始终找不到返回的数据,而且里面有个属性reponseData是undefined,但当response.json()时却可以找到

    谢谢您的指教



  • @wangliguang 说:

     fetch('http://172.168.1.27:9090/test/dish_getbyid.php')
    
        .then((response) => response.json())
        
        .then((responseData) => { console.log(responseData)});
            
    }
    

    想要请教的问题如下:

    1. 为什么要用两个then,才可以获取到我返回的内容,这两个then分别是干嘛的。
    2. 第一个then中的参数是一个repsonse对象,但在里面我始终找不到返回的数据,而且里面有个属性reponseData是undefined,但当response.json()时却可以找到

    谢谢您的指教

    第一个then是调用返回对象json方法提取出返回对象的json数据,由于这一步还是异步操作,所以后面要再接一个then,否则拿不到json数据


登录后回复