如何从url中获取参数而无需回避(golang)
我需要准确地得到用户传输的信息。但是方法Query()在写入映射之前取消了参数的范围:( 例如:如何从url中获取参数而无需回避(golang),go,Go,我需要准确地得到用户传输的信息。但是方法Query()在写入映射之前取消了参数的范围:( 例如: 原始的、未扫描的查询可在以下字段中找到: 这将输出: url=https://pt.wikipedia.org/wiki/B%c3%a1rbara_Gordon 当然,这“只是”一个字符串,如果您只需要它的一部分,您就必须自己解析它,但几乎没有必要这样做。如果您打算将参数值注入另一个URL,只需使用它来构建它,它将正确地转义它。原始的、未转义的查询在以下字段中可用: 这将输出: url=https
原始的、未扫描的查询可在以下字段中找到: 这将输出:
url=https://pt.wikipedia.org/wiki/B%c3%a1rbara_Gordon
当然,这“只是”一个
字符串,如果您只需要它的一部分,您就必须自己解析它,但几乎没有必要这样做。如果您打算将参数值注入另一个URL,只需使用它来构建它,它将正确地转义它。原始的、未转义的查询在以下字段中可用:
这将输出:
url=https://pt.wikipedia.org/wiki/B%c3%a1rbara_Gordon
这当然是“公正”一个字符串
,如果您只需要它的一部分,就必须自己解析它,但几乎没有必要这样做。如果您打算将参数值注入另一个URL,只需使用它来构建它,它将正确地转义它。如果该URL需要完全按照您看到的方式进行解析,则编码字符的百分比需要是第二次转义。该查询字符串包含无效的保留字符。如果该URL需要完全按照您看到的方式传递,则需要第二次转义编码字符的百分比。该查询字符串包含无效的保留字符。谢谢!但我需要将此参数的值发送到数据库,例如。and现在我必须手动解析这个字符串,因为url.parse将始终取消显示值?@MrGodzilla:如果查询一开始是有效的,你就永远不会看到这种字符混合。正确引用查询字符串,它将准确地解析回你想要的方式。@MrGodzilla如果你想将参数发送到ano中,这并不重要删除URL或保存到DB中。只需保存未替换的值。它们是等效的。为什么需要原始的转义值?@icza,因为用户将按照我上面所写的形式搜索此精确值,并且我需要将其存储在此版本的数据库中,尽管第一个和第二个URL基本相同:)@哥斯拉先生,那么我会重新设计你的搜索引擎。我会存储未转义版本,如果有人搜索转义版本,请取消转义,然后您可以与存储的未转义版本进行匹配。谢谢!例如,我需要将这个参数的值发送到数据库。现在我必须手动解析这个字符串,因为url.parse将始终不显示值?@MrGodzilla:如果查询一开始是有效的,你就永远不会看到这种字符组合。正确引用查询字符串,它将准确地解析回您想要的方式。@MrGodzilla将参数发送到另一个URL或保存到DB中并不重要。只需保存未替换的值。它们是等价的。为什么您需要原始的转义值?@icza因为用户将按照我上面所写的形式搜索这个精确值,并且我需要将它存储在这个版本的数据库中,尽管第一个和第二个URL基本相同:)@MrGodzilla然后我将重新设计您的搜索引擎。我会存储未转义版本,如果有人搜索转义版本,请将其取消转义,然后您可以与存储的未转义版本进行匹配。
url=https://pt.wikipedia.org/wiki/B%c3%a1rbara_Gordon