问题标签 [httpoison]

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.

0 投票
1 回答
1876 浏览

json - 在 Phoenix 端点中调用 REST 后返回 JSON

我正在学习 Elixir 和 Phoenix,我正在构建一个需要查询 Github 的 API 的副项目。

这是执行调用的模块

这是响应“/api/github/search”上的 GET 的控制器

我从 Phoenix 那里得到一个错误页面,上面写着

无法编码值:{:total_count, 2389278}

所以有些东西正在工作,我实际上是在调用 Github 的 API,但由于某种原因我错过了一步,我已经按照这里的示例https://github.com/edgurgel/httpoison#wrapping-httpoisonbase

任何帮助/提示都非常感谢!

0 投票
1 回答
517 浏览

elixir - 如何使用 Elixir/HTTPoison 或 Hackney 获得视频流?

我正在尝试使用 Elixir / HTTPoison 从凸轮获取流并将其转储到文件中。网址为xxxx/axis-cgi/mjpg/video.cgi?duration=1&resolution=320x240

使用 DHC(Chrome 插件)中的 url,我可以拥有以下内容:

响应 200 OK

HEADERS Cache-Control: no-cache Pragma: no-cache Expires: Thu, 01 Dec 1994 16:00:00 GMT Connection: close Content-Type: multipart/x-mixed-replace; 边界=myboundary X-Time-Offset: 62044.312573 pretty COMPLETE REQUEST HEADERS Accept: / Accept-Encoding: gzip, deflate, sdch Accept-Language: fr-FR,fr;q=0.8,en-US;q=0.6,en; q=0.4 Content-Type: application/xml User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 注意:XHR 会自动添加像 Accept, Accept-Language、Cookie、User-Agent 等

原始格式的正文向我展示了很多由--myboundary分隔的二进制 jpeg 图像。

--myboundary

内容类型:图片/jpeg

内容长度:11848

����JFIF�� W�u]7W�u]7�� �2�̎TY"��C

现在,我想尝试用 Elixir 获得同样的效果。

我确实有以下回应,

我确实尝试过没有基本身份验证,但结果相同。

我还不明白这个身份验证错误发生了什么。当然我误解了一些东西,有人可以请教我这个问题吗?

亲切的问候,

皮埃尔

0 投票
1 回答
87 浏览

elixir - Elixir/HTTPoison 传输后的 Mpeg 文件格式不正确

遵循我的(愚蠢的)问题 并阅读

我设法连接到我的摄像头,从中获取流量并将其转储到 mpeg 文件中。这是更清晰的代码。

测试运行良好,按预期生成了一个文件,但是当我尝试读取它(使用几个播放器)时,我可以偷偷地从摄像头看到一张图像,然后它就停止了。

大小(取决于参数)可能很重要,在编辑文件时,我可以清楚地猜测这些是连续的 Jpeg 文件。

这是文件的开头。

--myboundary 内容类型:图像/jpeg 内容长度:9609

ˇÿˇ‡JFIFˇ˛ W»XW»Xˇ˛ ß2¨ÃéTY"ˇ€C

它尝试使用几个参数但没有成功,看起来该文件未被识别为 mpeg 文件。

有什么想法吗 ?问候,皮埃尔

0 投票
2 回答
3735 浏览

ssl - 如何向 HTTPPoison/hackney 添加可信证书?

当我尝试:

我得到:

这是意料之中的,因为在我的公司中,我需要信任防火墙的证书才能退出。

我信任系统范围内的证书(.cer 文件),这就是为什么在访问URLwget时不给我 ssl 错误的原因。https但似乎 hackney/HTTPoison 忽略了这个配置。

如何让 HTTPoison/hackney 将证书识别为可信证书?

0 投票
1 回答
913 浏览

elixir - 模式匹配 HTTpoison 响应 Elixir

有什么方法可以模式匹配的错误响应httpoison?我在做这个

但它没有抓住timeout并给了我错误

我认为这样做是错误的。有什么建议吗?

0 投票
1 回答
211 浏览

elixir - 在 Task.async 中包装函数调用会导致我不理解的奇怪行为

考虑以下代码片段:

一种)

b)

在 Foo.Bar 模块中:

当我使用代码片段 a) 时,永远不会到达“test5”,就好像程序会在 HTTPoison POST 请求期间挂起一样。它只是永远不会结束。同时,使用代码段 b),HTTPoison POST 请求正常完成,没有任何延迟。

老实说,调试这让我浪费了一些时间,我仍然不明白代码段 a) 的问题。我是否滥用了任务模块?我检查了文档,找不到任何可以向我解释这个问题的东西。

编辑:片段 a) 的输出

0 投票
1 回答
164 浏览

networking - 在定义的接口 IP 地址上启动 erlang/elixir

我正在使用 elixir 对我的机器上的主机进行一些 XMLRPC 查询,该主机只接受来自 127.0.xy 的调用,其中 x 和 y 可以配置,但 ip 不能是 127.0.0.1。

除非我添加标志,否则对该主机的简单curl请求将失败--interface 127.0.x.y

如何使用不同于 127.0.0.1 的给定接口 ip 启动我的 elixir 应用程序?

如果有帮助,我用来发送请求的库是 HTTPoison。

0 投票
0 回答
597 浏览

phoenix-framework - Elixir HTTPoison 没有 case 子句匹配:错误错误

我目前正在尝试在 Elixir 中构建一个简单的 HTTP 服务,该服务HTTPoison通过代理查询 Web 服务 (SOAP) API。这就是我的代码的样子:

但是,当我运行此代码时,它会返回:

当我检查控制台时,我看到:

我已经验证没有任何标题或选项是错误的。由于某种原因,它无法识别Host标题存在。

0 投票
1 回答
699 浏览

json - HTTPoison.patch 上没有匹配操作子句来处理请求错误

从 elixir genserver 进程中,我正在执行 post_metdata 方法以将 JSON HTTP Patch 请求发送到 Phoenix 端点(在另一台服务器上)。服务器继续出错,指示没有匹配的子句,显示 JSON 链接结构未包含在基于该方法的参数中。包含 id 但不包含传递的数据有效负载。关于似乎是什么问题的任何建议?

客户端代码

凤凰控制器方法预期,但不匹配

路由器.ex

错误记录到控制台

我已经成功地使用 Insomnia 执行了一个模拟 JSON 数据结构的请求。我将两个请求都发送到 Httpbin 并进行了比较。我能找到的唯一区别是 Content-type 对 HTTPoison 发送的请求有重复的 application/json 条目。但是,我找不到任何理由或选项来防止重复值。也没有任何理由让菲尼克斯窒息。

0 投票
1 回答
1270 浏览

http - 使用文件以外的更多数据发出 HTTPoison POST 多部分请求

我正在尝试构建一个函数来通过多部分格式的 POST 请求发送文件,使用作为指南,但无论我对表单进行什么更改,HTTPoison 都会不断给我两个错误。他们都是

我的表单的三个版本和错误如下(无论我是否使用标题):

第一版和第二版(两者的错误相同):

这给了我这个错误:

第三个版本:

这给了我以下错误:

我发现在多部分 POST 请求上施加此类障碍的一系列事件中总是有不幸,因此我想听听有关导致它们的可能原因的意见。

现在,我很乐意按照这种格式从头开始编写我自己的请求,但我强迫自己使用 Elixir 及其资源,在经历了几次这样的事故后最终学会了它。