Stackoverflow的搜索功能将基于标签的搜索与基于字符串的搜索区分开来,禁用了JS

Stackoverflow's Search feature differentiates Tag based from string based search with JS disabled

本文关键字:搜索 区分开 JS 字符串 标签 功能 于标签 Stackoverflow      更新时间:2023-09-26

好吧,我认为stackoverflow使用javascript基于基于字符串的搜索中[]给出的标签发出请求。

但是,它适用于禁用JS的情况。如果它只是一个GET请求 - 它如何/为什么会随着输入的内容而改变。如果它不受 JS 控制,那么每个请求都应该是一个string based GET request

我的问题是"如何在不使用 Javascript 的情况下更改请求类型 - 基于搜索的 GET search?q=xyz 或基于标签的/tagged/xyz"?

可能是一个愚蠢的问题,初学者。

基于标签的搜索是用纯超链接构建的:

<a href="/questions/tagged/get" class="post-tag" title="" rel="tag">get</a>

由于没有表单,也没有用户输入,因此不会生成查询字符串。由于链接是HTML的基本部分,因此不需要JavaScript。


根据评论进行更新:

您似乎在询问当使用常规搜索表单搜索也是标签的内容时会发生什么。

这可以通过以下服务器端逻辑实现:

IF search phrase is 1 word long
AND search phrase matches a tag_name in the tags database table
THEN issue HTTP 301 with Location: http://example.com/questions/tagged/ + search phrase