#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.
11 months ago
#2
- Keywords has-patch has-unit-tests added; needs-patch removed
Trac ticket: https://core.trac.wordpress.org/ticket/57048
#3
@
11 months 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
@
7 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
@
7 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 is the commit that addresses the issue in your version of the function: https://github.com/GoogleForCreators/web-stories-wp/commit/a7f4977f74d24f73c0a72d23501f6a1eb7ac9337#diff-e38e7938d6df1990969cd7d147a8d590b359fa3a96a33802c85aa5723abf0223R188
The proposed solution 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
@
6 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:
6 months ago
#11
Committed in https://core.trac.wordpress.org/changeset/59457
I'm working on a patch for this issue.