gpt4 book ai didi

javascript - 双引号的URL编码

转载 作者:太空狗 更新时间:2023-10-29 13:52:50 25 4
gpt4 key购买 nike

我知道 url 中不允许使用双引号字符,它被编码为 %22 并且这是通过 utf-8 编码 完成的。但是,如果我构建一个不执行 url 编码的浏览器,并使用双引号本身进行查询,因为它在 utf-8 编码方案中是允许的,会发生什么。例如:www.google.com/"a"。另外服务器端的url解析脚本遇到双引号会怎样?

最佳答案

由于您将无效的 URI 传递给服务器,服务器可能会以 HTTP 400 Bad Request 状态响应,但也可能不会。不同的服务器对此有不同的行为。例如,Apache 2.4 服务器响应 403 Forbidden。似乎他们将其识别为 SQL 注入(inject)尝试并立即将其压制。 nginx 服务器响应 404 Not Found

您无需构建不执行 URL 编码检查的浏览器。您可以从简单的 telnet 程序执行此查询,该程序作为大多数操作系统的一部分(但默认情况下可能未安装)。如果已安装,您只需在终端窗口中执行 telnet www.google.com 80,粘贴以下两行:

GET /"a" HTTP/1.1
Host: www.google.com

然后按 Enter 两次。您将收到 404 Not Found 的响应。如果您对 stackoverflow.com 执行相同操作,响应将是 400 Bad Request

关于javascript - 双引号的URL编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23037129/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com