Bugfix: Resized media urls result in the request path being too long #2107
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
Some web servers carry a limit to the length of the request path. This harms the media thumbnail generator, which is a GET endpoint. We cannot change the backend as that would be a breaking change, nor do we wish to do it because of the purity of REST. So we are going to make a network request for each thumbnail instead. This is exactly what the old Backoffice did as well.
There are some advantages to doing this besides fixing the web servers: We can now space out the calls and wait until the elements are visible before initiating the request -- we will look into some of this in subsequential PRs.
The thumbnails are now also being cached in memory through a store in a nested map based on the media key (GUID) and thumbnail options (width, height, mode). This results in far fewer network calls when you have a lot of media showing up in the media library.
Fixes umbraco/Umbraco-CMS#16716
Types of changes
How to test?