在React + Redux中,什么时候应该使用response.json()

时间:2016-10-23 22:52:15

标签: reactjs redux

从官方示例中,服务器的获取数据是这样完成的:

call (function)

所以我应该何时使用function fetchPosts(subreddit) { return dispatch => { dispatch(requestPosts(subreddit)) return fetch(`http://www.reddit.com/r/${subreddit}.json`) .then(response => response.json()) .then(json => dispatch(receivePosts(subreddit, json))) } } ?我检查了mdn,但仍然不清楚。

1 个答案:

答案 0 :(得分:1)

  

这取决于您实际要求的内容以及您想要做的事情   回应。

例如,如果您要求提供任何图片,则无需致电response.json(),而是要做 -

var myImage = document.querySelector('.my-image');
fetch('flowers.jpg').then(function(response) {
  return response.blob(); // here 
}).then(function(response) {
  var objectURL = URL.createObjectURL(response);
  myImage.src = objectURL;
});

如果您希望从application/json回复中获取javascript对象,则希望parseJSON.parse()一起处理响应数据。那个时候你需要拨打response.json()