问题标签 [hyper]
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.
rust - 期望一个实现“Fn”特性的闭包,但这个闭包只实现了“FnOnce”
我想使用 Hyper 来实现 Web 服务。我从hello world 示例中复制了代码,它成功了。当我尝试向HelloWorld
结构添加数据访问对象时,出现错误,我不知道如何修复它。如何将 trait 成员添加到 Hyper 服务器?
错误信息:
rust - 如何实现自定义类型的标头以与 Hyper 一起使用?
我更愿意利用 Hyperhyper::header::Headers#get
方法的类型安全性,而不是get_raw
使用&str
.
实现这一目标的最佳方法是什么?
rust - How do I use a Hyper client within a MPSC receiver?
I've got an application which pulls items off a queue in a callback. The callback is in a separate thread, so I can't do any of this directly in the callback. The items on the queue include a URL and a message body to be POSTed to the URL. Based on the response, I either remove the item from the queue or re-enqueue it.
Here's what I've got:
which gives me the following error:
which makes sense, but I can't find any sort of way to convert a FutureResponse
to a FutureResult
. Am I missing something here? Can I not use a Hyper client within a future like this?
rust - 创建具有自定义错误类型的超级服务
我正在尝试使用 hyper 创建一个 REST 服务器。对于稳健的错误处理,我希望服务返回一个包含超、柴油和其他错误的自定义错误类型的未来。不幸的是,hyper::Response
似乎用错误类型硬编码了一个流hyper::error::Error
,这与我为我的服务定义的错误类型冲突。我看到了几个可能的解决方案:
通过修改让我的服务返回我的自定义错误类型
hyper::Response
,这似乎很难。将非超错误包装在
hyper::error::Error
. 这似乎很骇人听闻。别的东西。似乎我错过了执行此操作的“正确”方法。
以下代码显示了我想我想做的事情:
此代码导致编译器错误,我认为这是因为该bind
函数要求响应类型的主体是具有错误类型的流hyper::error::Error
:
rust - 在检查正文时将正文和标头从超 HTTP 请求复制到新请求
我想使用 hyper 创建一个小型 Rust HTTP 代理,它接受请求、转发它们并转储请求 + 正文。
基于这个例子,代理部分工作正常。
但是,我不能简单地复制和打印请求正文。我的主要问题是请求正文不能简单地复制到类似Vec<u8>
. 我不能deconstruct
请求读取正文,然后再创建它,因为解构的标头无法添加到新请求中。
以下代码显示了我的最小 HTTP 代理示例:
运行它运行良好,如果您在端口 80 上运行任何 HTTP 服务,使用浏览器连接到端口 9999 将完美地转发任何响应和请求。
但是,如果您重新启用有关构建新的复制请求的行,我的方法将失败,因为我不明白如何复制标头。(此外,在复制请求正文时,这并没有真正帮助我)
我知道这里有类似的问题,但没有一个符合我在查看请求正文后重新使用请求正文的要求(或者根本没有答案)。
python - 如何使用 Hyper 向 HTTP2 发送 POST 请求
我只想发送一个发布请求以向仅使用 h2 协议的网站提交表单。
这似乎不起作用。而且由于 Hyper 文档非常空。我需要一些外部帮助。
先感谢您
rust - 超级客户端无法查找在 IPv6 localhost 上运行的服务器的地址信息
我有一个简单的 HTTP 服务器,在端口 3005 上使用路由器和 Iron。它没有做任何令人兴奋的事情。我相信它只是回应了请求,但细节并不重要。
我还制作了一个简单的客户端,使用 hyper 的客户端模块向服务器发送请求。
每当我在 IPv4 上运行服务器时localhost
,我都没有遇到任何问题。我可以用我的客户和 curl 查询它。如果我在我的 IPv6 上启动服务器localhost
(我使用的是缩短版本::1
),我只能使用 curl 访问服务器。
这表明服务器运行正常并响应,但我Client
访问它的超代码失败,报告:
Err(Io(Error { repr: Custom(Custom { kind: Other, error: StringError("未能查找地址信息:名称或服务未知") }) })) 线程'main'在'调用
Result::unwrap()
一个Err
值时恐慌: io(Error { repr: Custom(Custom { kind: Other, error: StringError("无法查找地址信息:名称或服务未知") }) })', /checkout/src/libcore/result.rs: 860
我用来发送 POST 请求的代码如下:
s
我要发送的一些有效载荷在哪里。
我也尝试了扩展的 IPv6 地址 ( [0:0:0:0:0:0:0:1]
),我得到了同样的错误。
我还尝试了不带括号的缩短和扩展 IPv6 地址。我得到带有扩展地址的“无效端口-”和带有缩短地址的“空主机”。
要重现此行为,您可以使用这些小示例(取消注释注释行以接收错误):
服务器
客户
客户端V2
注1:
您需要 hyper 0.10.X 才能运行此代码。就我而言,我使用的是 0.10.13
笔记2:
我正在发送没有有效负载的 GET 请求,以抽象出无关的功能位。
注3:
看起来 hyper 0.10.X 和 hyper 0.11.X 处理 IPv6 服务器的方式不同。Hyper 0.10.X 给出了上述错误,而 0.11.X 给出了 Response Code 400 Bad Request。
electron - 如何使用 Hyper 编写 Electron 应用程序?
我想知道,如何开始使用Hyper.js源代码编写Electron应用程序?
我是 Electron 和 Hyper 的新手,并且观看了一些关于构建 Electron 应用程序的视频。但我不太清楚如何启动 Hyper 应用程序。例如,源文件中的“主”文件是哪个?