问题标签 [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 回答
300 浏览

elixir - 等到所有数据都从 HTTPoison 中的网页加载完毕

我正在尝试加载一个网页,我感兴趣的数据是Ajax在初始页面加载后加载的。当我获取页面时,我当前看到的文本是Loading records....

我想知道在将数据返回给我之前,我可以使用哪些技术来等到该部分加载完毕。

目前我正在使用 ElixirHTTPoison库,但我对 Elixir/Erlang 中的不同技术持开放态度。

0 投票
1 回答
4109 浏览

phoenix-framework - 如何在长生不老药中使用特斯拉发出帖子请求

我正在尝试使用 tesla 发出发布请求,但出现错误:

我的请求代码是

在 tesla base url 中是:https://api.sendgrid.com/v3并且还设置了 authorization key。我们如何为发布请求传递数据?

正如在特斯拉文档中定义的发布请求一样:

这个星球上有没有人可以帮助摆脱这个故障:(。

0 投票
1 回答
450 浏览

asynchronous - 如何使用 HTTPoison 发出异步请求?

背景

我们有一个每秒处理大量请求的应用程序。此应用程序需要通过 HTTPS 向我们的一台服务器发出 GET 调用来通知外部服务。

客观的

这里的目标是使用 HTTPoison 发出异步 GET 请求。我并不真正关心请求的响应,我只关心它们是否失败,因此我可以将任何可能的错误写入记录器。

如果成功了,我什么都不想做。

研究

我查看了 HTTPoison 的官方文档,发现它们支持异步请求:

https://hexdocs.pm/httpoison/readme.html#usage

但是,我对这种方法有两个问题:

  1. 它们用于flush显示请求已完成。我无法登录应用程序并手动flush查看请求的进展情况,这太疯狂了。
  2. 当我们收到响应或错误时,它们不会显示任何通知机制。

所以,我有一个简单的问题:

  1. 如何异步通知我的请求失败或成功?

我假设默认HTTPoison.get是同步的,如文档中所示。

0 投票
1 回答
447 浏览

testing - 如何用 Mox 模拟 HTTPoison?

背景

我有一个库,它使用 HTTPoison 来实现我需要测试的一些功能。为了实现这一点,我正在使用Mox,我相信它是 Elixir 的通用模拟库(即使还有其他的,这个已经获得了 José Valim 的批准印章)

问题

一切都很好,我在以下位置定义了我的模拟test_helpers.exs

我设置了我的虚拟测试:

这里的问题是我无法运行它们:

模块 HTTPoison 不是行为,请将行为传递给 :for

模拟合同,而不是实现

现在,我知道 José Valim 支持这种意识形态,因此我们应该嘲笑的一切都应该有一个合同。但是 HTTPoison 不是我的,也没有。所以这让我想到了以下问题:

  • 如何使用 Mox 模拟不提供行为的第三个库?
0 投票
1 回答
301 浏览

proxy - HTTPoison sock5 代理

我正在使用 HTTPoison 通过代理发送 HTTP 请求,但是当我更改代理的端口时,HTTPoison 似乎不会自动适应:

有没有办法强制 HTTPoison 使用作为参数发送的端口?

0 投票
2 回答
823 浏览

elixir - HTTPoison 手动关闭连接

这是一个非常简单的模块,它会不断检查请求者的 IP。我使用反向连接代理,这意味着它会在每个 http 请求上获得新的 IP。

问题?只要进程处于活动状态,HTTPoison(hackney) 就不会释放连接,因此 IP 始终相同。我将如何手动关闭内部的连接:

0 投票
1 回答
244 浏览

elixir - 如何向 Stripe 发送 http 请求而不是 curl 请求?

我可以成功地向 Stripe API 发送 curl 请求,就像这样:

如何使用 Elixir 依赖项:HTTPoison 发送 HTTP 请求?

0 投票
2 回答
514 浏览

elixir - Phoenix 混合任务上的 HTTPoison ArgumentError

mix fetch.btc在凤凰应用程序(lib/mix/tasks/fetch.btc.ex)上有混合任务:

当我运行时mix fetch.btc出现错误:

但在我的控制器中,这段代码res = HTTPoison.get!("https://blockchain.info/ticker")是成功的!

信息:

  1. 我究竟做错了什么?
  2. 在混合任务中发出http请求的正确方法是什么?
0 投票
1 回答
1214 浏览

curl - 如何在 Elixir Phoenix 中将 CURL 请求转换为 Httpoison 请求

我正在尝试在 Elixir Phoenix 中使用 HTTPoison 转换 CURL 请求。当我运行 CURL 请求推荐时,它工作正常。当我尝试使用 HTTPoison 时出现“415 不支持的媒体类型”错误。

Phoenix/Elixir - cURL 有效,但 HTTPoison 失败

这是我的 CURL 请求

这是我的 Httpoison 请求

0 投票
1 回答
379 浏览

oauth-2.0 - Reddit api oauth 认证长生不老药

我正在尝试检索访问令牌。我已经设法让用户授权我的应用程序,现在我正在尝试检索访问令牌。这是 reddit oauth2 文档:https ://github.com/reddit-archive/reddit/wiki/oauth2 这是我正在使用的 HTTPoison 发布请求:https ://hexdocs.pm/httpoison/HTTPoison.html#post /4

我不知道如何发出 post 请求,client_id 应该在正文还是在标题等处。

我收到状态码 401

预期结果