LINUX.ORG.RU

История изменений

Исправление vertexua, (текущая версия) :

  let x = response.body().wait() match  ...
         futures::ok(x)

Вот кстати тут подозрительное место.

https://docs.rs/futures/0.1.27/futures/future/trait.Future.html#method.wait

Это же блокирующее ожидание. Код надо писать асинхронно.

А то ждешь, а потом заново заворачиваешь futures::ok. Так никто не делает. Сделай какой-то body().map(... match ... ) и не надо ничего в ok() заворачивать. А то и вообще весь этот and_then() замени на map()

Вообще надо бы уже async/await использовать, если есть возможность

Исправление vertexua, :

  let x = response.body().wait() match  ...
         futures::ok(x)

Вот кстати тут подозрительное место.

https://docs.rs/futures/0.1.27/futures/future/trait.Future.html#method.wait

Это же блокирующее ожидание. Код надо писать асинхронно.

А то ждешь, а потом заново заворачиваешь futures::ok. Так никто не делает. Сделай какой-то body().map(... match ... ) и не надо ничего в ok() заворачивать. А то и вообще весь этот and_then() замени на map()

Исправление vertexua, :

  let x = response.body().wait() match  ...
         futures::ok(x)

Вот кстати тут подозрительное место.

https://docs.rs/futures/0.1.27/futures/future/trait.Future.html#method.wait

Это же блокирующее ожидание. Код надо писать асинхронно.

А то ждешь, а потом заново заворачиваешь futures::ok. Так никто не делает. Сделай какой-то body().map(... match ... ) и не надо ничего в ok() заворачивать. А то и вообще весь этот and_then замени на map()

Исходная версия vertexua, :

  let x = response.body().wait() match  ...
         futures::ok(x)

Вот кстати тут подозрительное место.

https://docs.rs/futures/0.1.27/futures/future/trait.Future.html#method.wait

Это же блокирующее ожидание. Код надо писать асинхронно.

А то ждешь, а потом заново заворачиваешь futures::ok. Так никто не делает. Сделай какой-то body().map(... match ... ) и не надо ничего в ok() заворачивать