Описание тега http4s

Http4s - это минимальный идиоматический интерфейс Scala для служб HTTP.
2 ответа

Http4s EntityDecoder не выводится автоматически для простого класса дел

Я получаю эту ошибку: Cannot decode into a value of type com.blah.rest.model.UserProfile, because no EntityDecoder[cats.effect.IO, com.blah.rest.model.UserProfile] instance could be found. для следующего класса дел: case class UserProfile(id: Option…
29 окт '17 в 13:49
1 ответ

Как увеличить время ожидания запроса для http4s

У меня есть запрос, который разговаривает с БД, который требует времени для ответа. И http4s выбрасывает тайм-аут запроса. Я хотел знать, есть ли свойство для увеличения времени ожидания запроса? Спасибо Саад.
18 май '17 в 23:40
1 ответ

http4s клиент создает Uri из строки

Я написал следующий код, используя клиентскую библиотеку http4s import org.http4s.UrlForm import org.http4s.Uri import org.http4s.client.blaze.SimpleHttp1Client import org.http4s.dsl._ import org.http4s.client._ val requestUrl = s"$url/foo/bar" val …
23 янв '17 в 21:00
1 ответ

Как декодировать Json с корневым массивом?

У меня возникли проблемы с выяснением, как декодировать json с корневым массивом в класс case, используя json4s-jackson библиотека. Цель извлечения непосредственно в кейс-класс, а не в Seq[Username] чтобы проверить существование единственного значен…
13 июн '18 в 11:49
0 ответов

SBT затенение двух версий зависимости

Когда я запускаю свои тесты, я вижу следующую ошибку: Exception: java.lang.NoSuchMethodError: fs2.Stream$.bracket(Ljava/lang/Object;Lscala/Function1;Lscala/Function1;)Lfs2/internal/FreeC; Сначала я удостоверился, что мой файл сборки был очищен путем…
28 ноя '18 в 18:13
0 ответов

Моделирование нескольких вызовов функций с помощью потока (безопасным способом FP)

Учитывая функцию A => IO[B] (ака Kleisli[IO, A, B]) который должен вызываться несколько раз и имеет побочные эффекты, такие как обновление БД, как делегировать такие множественные вызовы в поток (я полагаю, Pipe[IO, A, B]) (fs2, monix наблюдаемый…
25 фев '19 в 10:10
1 ответ

Настройка времени соединения Cassandra в Phantom DSL

Я использую фантом для подключения к Apache Cassandra и хочу настроить соединитель во время выполнения, то есть я хочу проанализировать некоторый файл конфигурации, извлечь список баз данных Cassandra и передать его каким-то образом Database объект.…
27 фев '18 в 12:08
1 ответ

Как программно закрыть fs2.StreamApp?

Простирающийся StreamApp просит вас предоставить stream отсроченный Оно имеет requestShutdown параметр. def stream(args: List[String], requestShutdown: F[Unit]): Stream[F, ExitCode] Я предоставляю реализацию для этого и понимаю, что args передается …
06 мар '18 в 21:59
1 ответ

Очень простой вызов не может быть сделан с использованием http4s

Я написал этот простой scala-код, используя библиотеку http4s import org.http4s.client.blaze._ object ScalaHttpTest extends App { val c = PooledHttp1Client() val rTask = c.expect[String]("""http://localhost:50070/webhdfs/v1/user/?op=LISTSTATUS""") v…
11 сен '16 в 04:13
1 ответ

Связь между бэкендом http4s и интерфейсом Binding.scala

Я пытаюсь использовать Binding.scala с существующим бэкенд-сервисом http4s, но потерялся в том, как они будут сочетаться друг с другом. Я не уверен, как "связать", скажем, FS2 Task или кошки-эффект IO с Binding.scala.
20 июн '17 в 01:04
2 ответа

Настройка файлов cookie с помощью клиента Http4s

Я использую библиотеку Http4s для выполнения HTTP-вызовов к веб-службе REST. остальная веб-служба требует, чтобы я установил файл cookie аутентификации. Я написал следующий код, чтобы установить этот файл cookie. val client = PooledHttp1Client() val…
26 сен '16 в 04:53
1 ответ

Как превратить IO кошек в эффект, используя http4s

У меня есть код, который возвращает IO, но мне нужен эффект в http4s. import cats.effect.{Effect, IO} class Service[F[_]: Effect] extends Http4sDsl[F] { val service: HttpService[F] = { HttpService[F] { case GET -> Root => val data: IO[String] …
21 апр '18 в 12:02
1 ответ

Добавьте обработку исключений в http4s с помощью rho

Я использую http4s & rho (в основном для интеграции Swagger) Мои сервисы используют этот объект DAO, методы, которые могут генерировать исключения (Task) case class BasicMatchDao() { def readAll(): Task[List[BasicMatch]] = Task.fail(ActionNotImpleme…
26 сен '17 в 12:46
3 ответа

https4s, как сделать POST-вызов веб-службы REST

Я пытаюсь использовать библиотеку http4s. Я пытаюсь сделать POST-запрос к веб-сервису REST с некоторой полезной нагрузкой json. когда я читаю документацию http://http4s.org/docs/0.15/ я вижу только пример метода GET. Кто-нибудь знает, как сделать PO…
28 июл '16 в 18:43
2 ответа

Await.result на HttpService

У меня есть проект Scala с http4s 0.15.16a и Slick 3.2.1 с этими шагами: Получить удостоверение по звонку отдыха передача идентификатора в MySlickDAO, который отвечает Future Вызов Await.result(res, Duration.Inf) в будущем, возвращаемом MySlickDAO С…
19 сен '17 в 17:39
1 ответ

Обработка многокомпонентного контента в http4s

Я хотел бы знать, как я могу обрабатывать многокомпонентный контент, используя библиотеку http4s. Представьте себе сервис со следующим фрагментом (полный смысл здесь): case GET -> Root / "form" => Ok( """|<html> |<body> |<form m…
18 ноя '17 в 17:25
2 ответа

Обновление Http4s до 0.18: StaticFile и падение / проход

В Http4s 0.16.6a у меня был следующий сервис. import org.http4s.server.staticcontent._ import org.http4s._ object StaticFiles { val basepath = ... def apply(): HttpService = Service.lift(request => { val file = basepath + request.uri.path StaticF…
17 янв '18 в 13:23
0 ответов

Служба http4s отключает JSON в больших запросах POST

У меня запущен какой-то сервис, настроенный так: BlazeBuilder.bindHttp( port, "0.0.0.0" ).withLengthLimits( maxRequestLineLen = Integer.MAX_VALUE, maxHeadersLen = Integer.MAX_VALUE ) Тем не менее, когда я POST в службу с большой частью JSON (~65 Кба…
22 мар '18 в 19:47
2 ответа

http4s - получить тело запроса в виде String или InputStream

Я пытаюсь определить HttpService который получает JSON и анализирует его в случае с классом json4s библиотека: import org.http4s._ import org.http4s.dsl._ import org.json4s._ import org.json4s.native.JsonMethods._ case class Request(firstName: Strin…
04 май '16 в 20:19
1 ответ

Кодирование рекурсивной структуры данных в Json с помощью Circe при работе на http4s

Я строю очень простой сервис, который должен возвращать древовидную структуру, определенную через рекурсивный класс case: case class Node(id: Int, name: String, children: Seq[Node] = Seq()) Но по какой-то причине я продолжаю получать следующую ошибк…
16 июн '17 в 11:06