Change query parameter handling in EngineURL to be consistent, regardless of how the full URL is specified
Categories
(Firefox :: Search, task, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox138 | --- | fixed |
People
(Reporter: standard8, Assigned: mbeier)
References
Details
(Whiteboard: [sng][search-tech-debt])
Attachments
(1 external file)
EngineURL currently has two different methods of handling query parameters, depending on how it is constructed.
For application provided engines, the URLs are typically just the pre-path plus the file path, e.g. https://example.com/search and then the parameters are stored separately.
However, third party add-ons, OpenSearch engines are typically specified with the parameters in the url, e.g. https://example.com/search?q={searchTerms}&foo=bar.
This causes us to have to do various bits of special handling.
It also provides a potential non-obvious cause for bugs, such as bug 1948541 - there we changed how the search term was processed for the template, but forgot this would affect cases where the template includes the query parameters.
To fix this, we should make EngineURL always store the query parameters separate to the non-query part of the URL. This should help resolve bug 1948541, and make it simpler in future.
When fixing this, we should make sure that the different URL structures are correctly handled when loading from or saving to the settings file, with a migration if necessary.
Updated•1 year ago
|
| Assignee | ||
Updated•1 year ago
|
| Assignee | ||
Comment 1•1 year ago
|
||
Updated•1 year ago
|
Updated•11 months ago
|
Description
•