searxng/docs
Markus Heiser ca85d20204 [mod] set HTTP GET method by default
HTTP GET vs POST
================

Already diskussed in "Method POST harms UX without providing a tangible privacy
benefit" [1].  At that time we agreed to POST.  However, as we are having more
and more drawbacks with POST, I suggest that we reconsider our previous
decision. The latest cause was [2], but we also have other problems that
negatively affect the UI [1]:

* Open Link in New Tab: does not work for our search result tabs because they
  aren't actual links.

* Bookmarking: a search becomes more difficult with POST. You cannot just press
  a browser keyboard shortcut `Ctrl+D` ... no you have to copy the Search URL from
  the sidebar. This can pose a real struggle for less technically-minded users.

* Sharing: a search with somebody else becomes more difficult with POST (for
  the same reason).

Lock HTTP method in the preferences
===================================

If the user changes the HTTP method in his settings, e.g. from GET to POST, but
has not removed the SearXNG instance from the WEB browser and added it again,
the WEB browser will continue to work with the old setting (GET), while entries
in the HTML form use the newly set method (POST). Not realted to this commit,
but this complication is also known from autocomplete[3].

Only very few maintainers are aware of this fact and probably none of the users
know about it.  We should provide a setup in our defaults that is manageable in
its entirety and comprehensible for the user.  For this reason, the option to
select the HTTP method in the preferences is also disabled in this commit.

[1] https://github.com/searxng/searxng/issues/711
[2] https://github.com/searxng/searxng/issues/3590
[3] https://github.com/searxng/searxng/pull/2333#issuecomment-1565392120

Closes: https://github.com/searxng/searxng/issues/3590
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-06-28 15:14:33 +02:00
..
_themes/searxng [dev-env] upgrade Sphinx-doc 7.2.3 and unpin at v7.1.2 on py3.8 2023-08-27 17:22:45 +02:00
admin [mod] set HTTP GET method by default 2024-06-28 15:14:33 +02:00
build-templates [doc] improve documentation of make targets and ./manage script 2023-08-06 19:37:12 +02:00
dev [feat] hostname replace plugin: possibility to prioritize certain websites 2024-06-07 14:42:52 +02:00
src [doc] add 'hostnames' plugin to the online documentation 2024-06-07 14:42:52 +02:00
user [doc] rearranges Settings & Engines docs for better readability 2023-07-01 22:45:19 +02:00
utils [fix] spelling 2023-09-18 16:20:27 +02:00
conf.py [mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTION 2024-03-11 14:55:38 +01:00
index.rst [feat] engine: implementation of gitea 2024-05-15 07:23:57 +02:00
own-instance.rst [doc] rearranges Settings & Engines docs for better readability 2023-07-01 22:45:19 +02:00