问题标签 [elixir-poison]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
elixir - 在发送之前将 HTTP 状态附加到 Poison 编码的 JSON
有没有办法在被 Poison 编码之前将 HTTP 状态放入特定的结构中?
我想更普遍的问题是我可以在我的编码器功能conn
级别访问吗?encode
我正在尝试构建类似于此处指定的 API:http: //jsonapi.org/examples/#error-objects
在我的控制器功能中,我有这个,它在请求发送出去之前透明地放置 HTTP 状态。但是,如果某些插件修改了管道中的 HTTP 状态,那么我在创建 ApiMessage 期间放置的任何状态也需要更新。
这是我要编码的结构:
我想使用自定义编码器在结构编码之前放置 HTTP 状态,如下所示:
在凤凰城可以做到吗?我想我只需要弄清楚如何conn
在编码器中获取最终状态即可。
authentication - Poison 无法编码 JSON (Phoenix)
这种情况的延续:Can't understand destructuring in JWT auth (Phoenix)
我正在使用 JWT 和 Guardian 和 Comeonin 设置 API 身份验证。这个动作似乎有效,因为user
从 iex 调用 a 并将其传递Guardian.encode_and_sign/2
给我正在寻找的元组。
当我发出 curl 请求时,我在控制台中收到此错误:
我应该寻找什么来解决这个问题?
elixir - Poison.EncodeError at GET /api 无法编码值:{nil, "paths"}
尝试呈现 json 数据时,我的控制器中出现以下错误。
在四处搜索后,我尝试了这样的模型:
这似乎无法解决错误。尝试在控制器中预加载路径字段后出现此错误,如下所示:
我能够将数据查找插入到我的数据库中,并且可以通过以下方式查询所有内容:
有什么想法可以尝试吗?谢谢
javascript - 从 XMLHttpRequest 检索响应负载元素
我正在向具有login
以下功能的服务器发送一个 JSON 请求(一个应用程序,但请求的类型并不重要):
我实际上在responseText
现场得到了正确的答复。例如,如果凭据错误,我会得到
如果凭据正常,我会得到
但是,我无法获得该status
领域:resp.status
或者resp["status"]
总是undefined
。如果呼叫是在异步模式下完成的(xhr.open("POST", "http://localhost:4000/api", false);
)或者如果我没有JSON.parse()
回复,则相同,即:resp = xhr.responseText;
。
更新 - 2017.09.06
我终于找到了一种让它工作的方法,但我不太明白为什么会这样。我真的变了
进入
为了弄清楚这一点,我打印typeof(xhr.responseText)
了哪个是sting
. 实际上typeof(JSON.parse(xhr.responseText))
也是 a string
,这就是为什么它没有像status
. 最终,解析xhr.responseText
两次给出了一个object
我实际上可以从中检索数据的结果。
如果有人对正在发生的事情有所了解,我会感兴趣......我不知道这是否相关,但发送 JSON 的应用服务器是 Elixir/Phoenix 的最新版本,即 1.5/1.3 JSON编码/解码是用毒药完成的。
json - Elixir:在嵌套 JSON 中按值前缀查找
我正在尝试在嵌套的 JSON 响应中查找 URL 并将它们映射。到目前为止,我的功能如下所示:
JSON 大致如下所示:
因此 URL 可以有任何键,并且可以处于任何级别。
使用该代码,我收到此错误:
有人有更好的方法在 JSON 响应中找到吗?
elixir - Poison.EncodeError 无法对值进行编码:{“已被占用”,[]}
我正在尝试返回无效的变更集。
做的时候
或者
使用 JaSerializer 我得到
这是出乎意料的。它早些时候工作。我有 {:poison, "~> 2.0"},
更新
elixir - 在 Elixir 中映射 JSON 值
我已经使用 Posion.decode 解析了以下 JSON!
我想对此进行映射,但随着节点元素中的文本发生变化,我无法获取 JSON 元素。到目前为止,我已经尝试过了。
但是这段代码给出了一些与访问相关的错误。
json - Elixir 用 Poison 解码
我从我的数据库中获取这个字符串作为查询结果:
有没有办法把这个转换回地图?我在用毒药解码它时遇到了这个错误
我无法修复将数据添加到数据库的方式,我必须找到一种合适的方式让键/值路由轻松地从中检索数据。(这只是更复杂结果的示例)
elixir - 从 API 获取数据并使用 Poison 解码时出现参数错误
我是 Elixir/Phoenix 的新手,并试图通过构建一个小应用程序来学习。
我正在从第 3 方 API 获取数据并不断收到以下错误。
我在控制器中拥有的是:
这不起作用。我使用了 (keys: :atoms),这在 Poison 文档中是不鼓励的。
这是我的架构:
我正在尝试为“24h_volume”使用不同的字段名称,但出现此错误:
我显然在这里遗漏了一些东西。
有没有办法将所需的字段名称传递给 Poison,因为“24h_volume”不是有效的原子?我该如何解决这些错误?
json - 如何在 Elixir 中修改地图
我使用Elixir和Phoenix创建了一个 JSON api
我的控制器中有一个用于创建操作的端点,它采用如下所示的 json 数据:
我的目标是获取这个 json 并从中创建一个新的,其中一些键和值被重命名以匹配我下面的模式:
在web/models/messages.ex
这是我尝试过的:
在web/controller/message_controller.ex:
但很快就清楚它也不起作用,因为我仍然需要删除一些键。
我来自 Ruby/Python (Rails/Django),不想用我的 OO 知识开始污染我对函数式编程的学习,特别是 elixir/phoenix。
你将如何解决这个问题?