gpt4 book ai didi

scala - 如何使用 Lift 将 x-www-url 编码的字符串解析为 Map[String, String]?

转载 作者:行者123 更新时间:2023-12-04 05:26:15 26 4
gpt4 key购买 nike

从 Lift,我得到了一个表格字符串

TOKEN=EC%2d454178600K772032D&TIMESTAMP=2011%2d06%2d29T13%3a10%3a58Z&CORRELATIONID=cbd56e97cad38&ACK=Success&VERSION=64&BUILD=1936884

来自 HTTP 请求的响应。

尽管这可能非常简单,但我找不到将其解析为不错的 Lift 函数 Map[String, String] .有什么帮助吗?

最佳答案

来自 Lift 的 Req.scala:

// calculate the query parameters
lazy val queryStringParam: (List[String], Map[String, List[String]]) = {
val params: List[(String, String)] =
for {
queryString <- request.queryString.toList
nameVal <- queryString.split("&").toList.map(_.trim).filter(_.length > 0)
(name, value) <- nameVal.split("=").toList match {
case Nil => Empty
case n :: v :: _ => Full((urlDecode(n), urlDecode(v)))
case n :: _ => Full((urlDecode(n), ""))
}} yield (name, value)

val names: List[String] = params.map(_._1).distinct
val nvp: Map[String, List[String]] = params.foldLeft(Map[String, List[String]]()) {
case (map, (name, value)) => map + (name -> (map.getOrElse(name, Nil) ::: List(value)))
}

(names, nvp)
}

关于scala - 如何使用 Lift 将 x-www-url 编码的字符串解析为 Map[String, String]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6521419/

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