问题描述
我正在用svelte重写以前的SPA React应用程序。我使用svelte-routing作为路由器,每当我在浏览器地址栏中输入一个URL时,该URL都会变成小写。这给我带来了一个问题,因为我需要使用原始大小写来捕获URL参数。 使用React版本,我没有这个问题。
与svelte一起使用的sirv / polka服务器是否有问题,或者该问题可能来自其他?
谢谢您的帮助。
解决方法
苗条的路由似乎并没有改变url的任何部分的大小写,因此这可能是服务器问题。
我发现了关于stackoverflow中的大小写和URL的冗长讨论。基本上,人们不应该相信url中的区分大小写,即最安全的选择将是小写,因为不同的服务器对大小写的处理方式不同。
查询参数和值更加复杂。如果我是后端设计人员,我将使查询参数不区分大小写,而值则区分大小写。
将与
相同www.EXAMPLE.Com/Product?BRAND=Nike&Color=black
但这不一样
尽管我会进一步设计后端,并且至少将颜色值视为不区分大小写。
简而言之:
作为用户,您永远不应相信url,查询参数或值的任何部分区分大小写。
作为后端设计人员,您应该允许url和查询参数的每个部分都不区分大小写。如果可能,查询值也应不区分大小写。