Почему нельзя? можно. Но вы должны понимать что как только компонент размонтируется вы потеряете данные. По этому делают запросы обычно в redux actions и хранят полученные данные в redux. Таких образом пока у вас есть удобный доступ к полученным данным из разных компонентов + вам не надо делать повторно запрос потому что они у вас уже лежат в redux.
А middleware это просто прослойка между диспатчем и моментом когда данные будут положены в редукс. В этот момент вы можете например навесить еще какую то логику. Например проверить токен сервера на то что он еще не истек и если истек выкинуть на авторизацию или сделать запрос на обновление.