Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using redux-bees with before middleware or redux-saga #66

Open
adambutler opened this issue Jan 23, 2019 · 1 comment
Open

Using redux-bees with before middleware or redux-saga #66

adambutler opened this issue Jan 23, 2019 · 1 comment

Comments

@adambutler
Copy link

I've reached a number of dead ends implementing redux-bees and I'm struggling to find a way forward due to two core issues. First, let me explain my requirements:

  1. I want to consume a JSON-API
  2. My API uses OAuth 2 for authentication
  3. I want all the good things from redux-bees like caching, writing data to the store etc.

Unfortunately, it seems thus far that there are a number of inherent issues that prevent me from having this. Most notably being that I may need to refresh a token before the API is requested. To avoid this happening more than once for concurrent requests I've implemented redux-saga to solve

@query() doesn't dispatch any action before the fetch is made

If it did I could:

  1. Watch for the action in redux-saga and defer it until I had a valid token.
  2. Watch for the action in a middleware and stop it if the token needed refreshing.

If I don't use @query I lose all of the good aspects of redux-bees

If I instead:

  1. Dispatch an action like GET_AUTHENTICATED_USER from my component
  2. Watch for that action in redux-saga
  3. Ensure I have a valid token
  4. Call the API directly api.getAuthenticatedUser()

The request works fine, I get back the data but no further dispatches are made that put the data into the store.

I'm at a little bit of a loss over how to proceed without dropping this library. Perhaps I'm missing something. I'd very much appreciate it if @stefanoverna could provide some further insights into the issues I've been facing.

@stefanoverna
Copy link
Contributor

stefanoverna commented Jan 23, 2019 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants