gpt4 book ai didi

ruby - 如何避免双重编码 URI

转载 作者:数据小太阳 更新时间:2023-10-29 08:22:21 25 4
gpt4 key购买 nike

如果一个 URL 没有被编码,它会在以后引起问题,所以我这样做

URI.encode(url)

问题是如果 url 已经编码(无论出于何种原因),这会进一步编码 url 使其无法使用。

除了做URI.encode(URI.decode(url)),有没有更好的方法来确保url只被编码一次?

最佳答案

没有真正的方法,您只需要跟踪字符串是否已经过 URI 转义。如果您有一个不知道它是否已经过 URI 转义的字符串,则没有好的解决方案。

通常,您应该在代码中的单个点进行编码。在内存中,您的所有字符串通常不应进行 URI 转义。从 URI 解析组件后,您应该立即取消转义组件。并且在构建 URI 时,仅在构建完整 URI 时对它们进行转义/编码。

你运气不好,因为你有一个字符串,不知道它是否被编码;您需要保持跟踪,最好是确保编码发生在清晰的系统边界。

关于ruby - 如何避免双重编码 URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31825687/

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