【发布时间】:2019-03-01 22:02:21
【问题描述】:
我想对一些文本进行 url 编码(例如,将每个空格替换为 %20 等)。我找到了“HTTP” Network.HTTP.Base.urlEncode 并且可以使用它,但我想知道 Yesod 生态系统中是否还有其他通常使用的东西。
【问题讨论】:
-
经过一番搜索,我发现“http-conduit” Network.HTTP.Conduit.parseUrl 使用来自“network”Network.URI 的 (escapeURIString isAllowedInURI)。这是其他Yesod'ers使用的吗?
-
Grep'ing 通过代码,我发现 Yesod.hs 中的 joinPath 使用 Network.HTTP.Types.encodePath/encodePathSegments 创建路径,其中包括百分比转义......这是为了从解析的路径对象(不是来自文本)创建百分比转义的 url。