Json 将Base64字符串转换为Elixir中的映射
我正在使用Elixir对包含JSON的Base64字符串进行解码。 我使用以下功能: Base.url_decode64(字符串) 但是,此函数返回一个字符串。特别是: “{\'algorithm\\':\'HMAC-SHA256\',\'app\'U data\':\'1\',\'issued\'at\':1452249105,\'page\':{\'id\':\'1051194981579510\',\'admin\':true},\'user\':{\'country\':'se\',\'locale\':'en\'U GB\','age\':{'min 21}” 问题是这个结构应该是一个映射而不是一个字符串,否则我无法访问JSON字段 问题是:如何将此字符串转换为地图?Json 将Base64字符串转换为Elixir中的映射,json,elixir,Json,Elixir,我正在使用Elixir对包含JSON的Base64字符串进行解码。 我使用以下功能: Base.url_decode64(字符串) 但是,此函数返回一个字符串。特别是: “{\'algorithm\\':\'HMAC-SHA256\',\'app\'U data\':\'1\',\'issued\'at\':1452249105,\'page\':{\'id\':\'1051194981579510\',\'admin\':true},\'user\':{\'country\':'se\',\'
或者:如何将此字符串视为映射并访问单个字段?您需要使用JSON库。有几个,一个常用的一个是(还有其他的): 这将使用函数 无论何时使用,我都喜欢将其别名为JSON,这样在我的代码中就不会引用
Poison
:
alias Poison, as: JSON
string |> Base.url_decode64 |> JSON.decode!
您需要使用JSON库。有几个,一个常用的一个是(还有其他的): 这将使用函数 无论何时使用,我都喜欢将其别名为JSON,这样在我的代码中就不会引用
Poison
:
alias Poison, as: JSON
string |> Base.url_decode64 |> JSON.decode!
您是否使用alias以便以后可以交换JSON库?@ChrisMeyer是的,这是主要原因。另一个是我不必记住毒药是一个json库。你是否使用别名以便以后可以交换json库?@ChrisMeyer是的,这是主要原因。另一个是,我不必记住毒药是一个json库。如果@Gazler的答案对你来说是正确的解决方案,你应该接受它。如果@Gazler的答案对你来说是正确的解决方案,你应该接受它。