-
Notifications
You must be signed in to change notification settings - Fork 685
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
Fix Service Worker matching external top-level URLs #3191
Merged
Merged
Changes from 2 commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
efe28fe
Fix Service Worker matching external top-level URLs
millennialdeveloper 565b8ac
Prettify commit efe28fe7d17e800175e6891672e9af4e5cf5cc55
millennialdeveloper d7fb4cd
Merge branch 'develop' into patch-1
tjwiebell 7e575c3
Add test for change
tjwiebell 684cd43
Merge branch 'develop' into patch-1
tjwiebell 7895d27
Merge branch 'develop' into patch-1
tjwiebell File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this needed? The SW only has access to routes under the scope, in this case, the domain that launched it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know about the whole service worker implementation in pwa-studio, but from here it seems that workbox may intercept external resources.
And without this change the script was loading through the service worker. The network tab showing it with a gear icon, and the response being the index template.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@revanth0212 I think, based on the link provided, if you pass a regex it will only match against the sw domain, but in our case we are intercepting all urls in the callback function.
Additionally, based on the
isHomeRoute
function it seems like ANY url without sub-paths iewww.google.com
orzopim.com
would returntrue
so the SW would return our index. And if there was a sub path that happened to match the store code likewww.google.com/en_us
it would also return true and therefor our index file.So if an external asset (like zen desk's js) is fetched from root, or if a file is requested from a path that is the first level that matches our store code, it will hit this sw route.