fix: resolve plex user mismatch due to caching issues #1242
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This PR addresses an issue introduced with #840 where cached responses for PlexTV API requests returned incorrect user data when multiple users were logged in (when previous cache existed). This was caused by a shared cache key that did not account for differences in auth tokens, i.e
X-Plex-Token
. TheserializeCacheKey
method should now include headers in the cache key generation to ensure unique cache keys. This should fix the plex user mismatch that occurred due to the same cache key being used without accounting for the difference in auth token.(Note)
The reason this did not occur on axios was because it was creating a new axios instance in the constructor with its own base config for each user/token, while with fetch it was reusing the same instance with shared cache.
PR can be tested with the tag
preview-fix-plex-user-mismatch
Screenshot (if UI-related)
To-Dos
pnpm build
pnpm i18n:extract
Issues Fixed or Closed