Url 使用键名但不关联值(或等号)的查询字符串合法吗?

Url 使用键名但不关联值(或等号)的查询字符串合法吗?,url,query-parameters,Url,Query Parameters,我试图理解查询参数的合法性。具体地说,我很好奇,查询字符串必须由键值对组成是一条硬性规定,还是只有一个键在技术上是有效的。不,我不是说一个带等号的键,后面什么都没有。我的意思是甚至不是等号。只是一把钥匙 例如本例中的“demomode”: https://www.somesite.com/search?searchString=abc&demomode 再说一次,这就是我实际要做的 。。。我决不是在宣传上面的第一个例子。我只是好奇 我还没有找到任何东西可以说明这是标准中的一条硬规则,一

我试图理解查询参数的合法性。具体地说,我很好奇,查询字符串必须由键值对组成是一条硬性规定,还是只有一个键在技术上是有效的。不,我不是说一个带等号的键,后面什么都没有。我的意思是甚至不是等号。只是一把钥匙

例如本例中的“demomode”:

https://www.somesite.com/search?searchString=abc&demomode
再说一次,这就是我实际要做的

。。。我决不是在宣传上面的第一个例子。我只是好奇

我还没有找到任何东西可以说明这是标准中的一条硬规则,一个人们刚刚同意的约定,或者它更特定于平台/解析器,因此这取决于


同样,我并不鼓励这样做。只是好奇。这是在查看前面包含pound定义的代码时产生的。你可以用一个值来定义某个东西,比如
#define mode=4
,然后稍后检查
4
,但你也可以简单地定义某个东西而不给它一个值,比如
#define header\u x
,然后简单地检查该值是否已定义,而不管该值是什么,或者,即使一开始就有一个。

说,Postelianly的读者应该将其视为等同于=和空值,但作者不应该创建它。我没有精力追查这件事的历史。太好了@dave_thompson_085,如果你把它移动到一个答案,我会这样标记。
https://www.somesite.com/search?searchString=abc&mode=demo
-or-
https://www.somesite.com/search?searchString=abc&demomode=1
-or-
https://www.somesite.com/search?searchString=abc&demomode=true