Быстрая и правильная реализация HTTP для Rust.
0 ответов

Как установить заголовок Content-Length в нескольких маршрутов с использованием никелевого промежуточного ПО?

Насколько я понимаю, обработчики промежуточного программного обеспечения не подходят для этого, так как они работают до обработки запроса. Мое текущее решение: router.get("/items/:id", middleware! { |request, mut response| // ... let data = json::en…
26 авг '17 в 04:15
1 ответ

"trait core::ops::Fn<(Request, Response)> не реализован" для закрытия при передаче пула соединений в Hyper-обработчик

Я пытаюсь создать небольшой веб-сервис в Rust, используя Hyper и r2d2, но я сталкиваюсь с некоторыми проблемами, касающимися черт. Я не могу разобрать сообщение об ошибке, выдаваемое компилятором, поэтому я надеялся, что кто-нибудь мне поможет. Расс…
20 мар '16 в 17:47
1 ответ

"не может рекурсивно вызывать`Core`"при попытке достичь вложенного параллелизма с помощью Tokio

Я строю сервис, который периодически делает HTTP-запрос. я использую tokio::timer::Delay в качестве периодического триггера и гипер, чтобы сделать вызов HTTP. Их совместное использование дает мне следующую ошибку: thread 'tokio-runtime-worker-1' pan…
01 июн '18 в 13:46
1 ответ

Могу ли я использовать Tokio Core и Hyper Client в Rocket?

Я хочу сделать клиентский запрос с Hyper 0.11 после того, как получу входящий запрос от пользователя, с которым я работаю с помощью ракеты, и использую как можно меньше ресурсов. Если я не могу использовать Core или ClientЯ должен был бы создавать и…
28 ноя '17 в 22:56
1 ответ

Значение сообщения запроса должно быть допустимым для статического времени жизни

Я хочу реализовать функцию блокировки, которая отправляет запрос POST с телом JSON и возвращает объект JSON ответа: extern crate tokio_core; extern crate rustc_serialize; extern crate hyper; extern crate futures; use std::str; use rustc_serialize::j…
27 окт '17 в 08:44
1 ответ

Ожидается закрытие, которое реализует черту `Fn`, но это закрытие только реализует`FnOnce`

Я хочу использовать Hyper для реализации веб-службы. Я скопировал код из примера "Привет, мир", и это удалось. Когда я пытаюсь добавить объект доступа к данным в HelloWorld struct, я получаю ошибку, и я не знаю, как ее исправить. Как добавить призна…
13 фев '18 в 10:41
1 ответ

Разбор объекта внутри объекта с помощью serde_json

Я застрял, ниже JSON, который я получаю: { "BCH": { "aclass": "currency", "altname": "BCH", "decimals": 10, "display_decimals": 5 } } Я немного запутался в том, как должна выглядеть моя структура для анализа атрибутов с использованиемserde_json обре…
06 сен '17 в 11:44
1 ответ

Почему не удается выполнить многократный импорт из Hyper Crate?

Я работаю над очень простым HTTP-клиентом в Rust, построенном поверх hyper ( GitHub, crates.io) ящик. Когда я пытаюсь повторить examples/client.rs файл в новом проекте Cargo с помощью cargo build (а также используя rustc src/main.rs), Я получаю неск…
26 май '16 в 21:04
1 ответ

Получение запроса от Hyper, анализ JSON и превращение его в структуру в ржавчине

Я пытаюсь создать веб-сервер, который принимает некоторые параметры в виде JSON и превращает их в структуру, которую я затем сохраню в другом месте моего приложения. У меня есть эта структура данных в файле с именем status.rs: use serde::{Serialize,…
16 фев '19 в 17:59
1 ответ

Я не могу обновить окно управления потоком в реализации HTTP2, поэтому клиент не может отправить остальные данные

Я реализую простой сервер и клиент asyncio HTTP2 в Python 3.6. Требуется реализовать управление потоком. Я установил окно управления потоком на 2048 байт на стороне клиента с функцией self.outbound_flow_control_window=2048, после того как клиенты от…
10 фев '19 в 13:10
1 ответ

Как получить заголовок Авторизационный канал?

Я хотел бы получить заголовок Authorization Bearer для целей OAuth, но это выглядит немного запутанно, читая документы use nickel::{Nickel, JsonBody, HttpRouter, Request, Response, MiddlewareResult, MediaType}; // Get the full Authorization header f…
16 дек '15 в 16:54
1 ответ

Повторное использование hyper::client и tokio_core в Iron и Hyper

Я делаю запрос клиента внутри обработчика Iron. Как я могу использовать Токио Core и Hyper's Client? Я использую гипер 0.11.0 и Tokio-Core 0.1. fn get_result(req: &amp;mut Request) -&gt; IronResult&lt;Response&gt; { let mut payload = String::new(); …
14 июл '17 в 21:21
1 ответ

Гипер-клиент не может найти информацию об адресе для сервера, работающего на локальном хосте IPv6

У меня есть простой HTTP-сервер, использующий Router и Iron на порту 3005. Он не делает ничего захватывающего. Я считаю, что это просто повторяет запрос, но детали не важны. Я также сделал простой клиент, использующий клиентский модуль Hyper для отп…
27 мар '18 в 16:18
1 ответ

Как сделать запрос с сертификатом клиента в Rust

У меня есть проект с микросервисами, развернутыми в Bluemix с контейнерами Docker. Все микросервисы написаны на Java, а для общения используются файлы JKS. Я также разработал микросервис в Node.js с Express.js. Чтобы использовать другие микросервисы…
2 ответа

Создание гипер-сервиса с пользовательским типом ошибки

Я пытаюсь создать REST-сервер с использованием гипер. Для надежной обработки ошибок я бы предпочел, чтобы служба возвращала будущее с пользовательским типом ошибок, охватывающим гипер, дизельные и другие ошибки. К несчастью, hyper::Response кажется …
15 мар '18 в 02:59
0 ответов

Любые советы по использованию Hyper в Rust

Я искал любые рабочие примеры и хорошую документацию для гипер-ящика в ржавчине и наткнулся на пример здесь. Однако, когда я запускаю этот пример, я получаю несколько ошибок. error[E0061]: this function takes 1 parameter but 0 parameters were suppli…
03 ноя '17 в 16:52
2 ответа

Как я могу реализовать пользовательский типизированный заголовок для использования с Hyper?

Я бы предпочел воспользоваться безопасностью типа Hyper's hyper::header::Headers#get метод вместо использования get_raw с &amp;str, Каков наилучший способ сделать это?
16 фев '18 в 20:07
0 ответов

Как сохранить hyper::server::Server с обработчиком по умолчанию в качестве поля struct в конструкторе?

Я пытаюсь сохранить hyper::server::Server как член моей структуры (struct MyApp ниже). Я могу сделать это, например, из моей программы main() функция. Как я могу сделать это в моей структуре MyApp::new() метод? Я думаю, что мне нужен конкретный тип …
23 июл '17 в 07:31
1 ответ

Гипер POST-запрос всегда дает 400

Я пытаюсь отправить запрос POST на сайт с использованием Hyper 0.9. Запрос работает с curl: curl https://api.particle.io/v1/devices/secret/set_light -d args=0 -d access_token=secret и Python: import requests r = requests.post("https://api.particle.i…
20 янв '16 в 03:41
1 ответ

Как я могу использовать hyper::client из другого потока?

У меня есть несколько потоков, выполняющих некоторые тяжелые операции, и мне нужно использовать клиента в середине работы. Я использую Hyper v0.11 в качестве HTTP-клиента, и я хотел бы повторно использовать подключения, поэтому мне нужно поделиться …
01 июл '17 в 23:58