我是Elixir
的新手,并且有以下列表对象:
[{"user_id", "DPMJecfXsYMlYnM4dvUVUEjmV763"}, {"role", "admin"}, {"content-length", "0"}, {"host", "localhost:5000"}, {"connection", "close"}]
每个元素中的第一个值是键,第二个是值。例如,user_id
是键,DPMJecfXsYMlYnM4dvUVUEjmV763
是值。如何在Elixir中通过key
查询该对象?
答案 0 :(得分:1)
您发布了关键字列表。有Keyword.get
函数,但仅适用于原子。因此,我建议先转换为地图,然后获取值:
[
{"user_id", "DPMJecfXsYMlYnM4dvUVUEjmV763"},
{"role", "admin"},
{"content-length", "0"},
{"host", "localhost:5000"},
{"connection", "close"}
]
|> Map.new
|> Map.get("user_id")
答案 1 :(得分:0)
这看起来像X-Y question。如果您使用的是Plug
,那么您真正想做的就是get a response header from the connection:
get_resp_header(conn, key)
返回由key指定的请求标头的值。
示例
iex> get_req_header(conn, "accept")
["application/json"]
因此您可以尝试:Plug.Conn.get_resp_header(conn, "user_id")