#57048 closed defect (bug) (fixed)
Handle trailing slashes in rest_preload_api_request
| Reported by: |
|
Owned by: |
|
|---|---|---|---|
| Milestone: | 6.8 | Priority: | normal |
| Severity: | normal | Version: | 5.0 |
| Component: | REST API | Keywords: | has-patch has-unit-tests has-test-info commit |
| Focuses: | rest-api | Cc: |
Description
When passing a path to rest_preload_api_request that ends in query string, ensure that the parsed path also is untrailingslashit. Follow up to #51636
Change History (12)
This ticket was mentioned in PR #6927 on WordPress/wordpress-develop by @antonvlasenko.
2 years ago
#2
- Keywords has-patch has-unit-tests added; needs-patch removed
Trac ticket: https://core.trac.wordpress.org/ticket/57048
#3
@
2 years ago
- Keywords has-testing-info added
The proposed PR updates the rest_preload_api_request function to remove trailing slashes from path parth of the request when preloading data for a specified REST API path.
Before patch:
Preloading /wp/v2/types//?media// would return an array with preloaded data keyed as /wp/v2/types//?media. Only slashes at the end of the path were removed.
After patch:
The path would be /wp/v2/types?media.
Steps to test this PR:
- Login to the admin panel.
- Edit an existing post or create a new one and then click
Edit. - Open the dev tools, inspect the source code of the page. You should see a call to the
wp.apiFetch.createPreloadingMiddleware()function and the preloaded data passed as an argument of that function. Typical preloaded requests are:/wp/v2/types?context=view/wp/v2/taxonomies?context=view/wp/v2/blocks?context=edit&per_page=-1/wp/v2/posts/<post-ID>?context=edit/wp/v2/types/post?context=edit/wp/v2/settings
#4
follow-up:
↓ 8
@
21 months ago
Me and @swissspidy came across this issue while working web stories together. We patched it in our own code. Here is our version of this function.
I can't remember now how we fixed this issue, but look at the git history.
#8
in reply to:
↑ 4
@
20 months ago
Replying to spacedmonkey:
Me and @swissspidy came across this issue while working web stories together. We patched it in our own code. Here is our version of this function.
I can't remember now how we fixed this issue, but look at the git history.
Thank you for the hint, @spacedmonkey.
I believe this commit addresses the issue in your version of the function: https://github.com/GoogleForCreators/web-stories-wp/commit/a7f4977f74d24f73c0a72d23501f6a1eb7ac9337#diff-e38e7938d6df1990969cd7d147a8d590b359fa3a96a33802c85aa5723abf0223R188
The proposed solution in this PR appears to not only resolve the issue you mentioned, but also correct the key at which preloaded data is stored (within the context of array_reduce()).
#9
@
19 months ago
- Keywords commit added
I have approved the PR for this change. Looks good to me. I have marked this ticket as commit. Take it away @swissspidy
@swissspidy commented on PR #6927:
19 months ago
#11
Committed in https://core.trac.wordpress.org/changeset/59457
I'm working on a patch for this issue.