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

Библиотека комбинаторов Haskell для определения и обслуживания веб-сервисов.
1 ответ

Перенаправления в Слугу

Как правильно обработчик Servant ответить перенаправлением? Я работаю в навигационном REST-приложении и хотел бы отвечать на POST-запросы, которые создают ресурсы с перенаправлением на соответствующие пути списка ресурсов GET. Так, например, POST /f…
17 окт '17 в 11:38
1 ответ

Запуск слуги Haskell через https с помощью nginx

Я пытаюсь понять, как правильно запустить конечную точку API Servant через https с помощью nginx. Итак, чтобы пройти через то, что я сделал. Поэтому я подумал, что мне, вероятно, потребуется настроить Servant, чтобы он мог обмениваться данными через…
01 апр '18 в 22:18
2 ответа

Что означает апостроф перед списком ( '[Something]) в Haskell?

Я читал документацию Servant и наткнулся на эту строку: type UserAPI = "users" :> QueryParam "sortby" SortBy :> Get '[JSON] [User] Что ' делать с этим списком?
01 июл '17 в 20:08
1 ответ

Слуга: загрузить файл как multipart/form-data

Как реализовать API для загрузки файлов с Servant? Я пытаюсь справиться с "стандартом" multipart/form-data но не могу понять, как объявить это в Слугу. Это, очевидно, не работает, поскольку он не может обрабатывать множественные части: type API = "f…
20 янв '16 в 09:27
0 ответов

Отсутствует заголовок CORS "Access-Control-Allow-Origin"

С использованием run от Network.Wai.Handler.Warp функция сервера остальные API run :: Port -> Application -> IO () но при этом post запрос, получаю ошибку CORS header ‘Access-Control-Allow-Origin’, Любая идея, как преодолеть это в слуге /haske…
17 ноя '17 в 09:03
0 ответов

Haskell/Persistent: повторное использование "selectList"

Я пытаюсь написать API на Servant и пишу много обработчиков, которые выглядят так: getTableA :: Handler [ARecord] getTableA = do xs <- runDB (selectList [] []) let records = map (\(Entity _ v) -> v) xs return records getTableB :: Handler [BRec…
19 апр '16 в 19:33
0 ответов

Обучающее руководство по клиенту на Haskell

Я новичок в Haskell и Servant и пытаюсь запустить официальное руководство. Я пытался заставить этот учебник работать, чтобы взглянуть на него, и не смог заставить его работать весь день. Я не хочу публиковать такой вопрос здесь, но я, честно говоря,…
13 дек '16 в 22:43
1 ответ

Использование маршрутов Servant.Generic с ReaderT (Pool Connection) IO

Я использовал servant-generic-0.1.0.3 а также servant-server-0.13.0.1 сделать следующее: data Site route = Site { page :: route :- "page" :> Capture "x" Int :> Capture "y" Int :> Get '[JSON] [Int] , home :: route :- Raw } deriving (Generic)…
22 июл '18 в 13:40
0 ответов

Как добавить функциональность страницы шаблона (макета) на веб-сайт Haskell Servant?

Я ищу простой и легкий способ добавить шаблон или функциональность макетов на веб-сайт в слуге. Поэтому, когда у меня есть несколько похожих страниц, мне не нужно создавать макет для каждой из них с нуля, я могу создать главную страницу или страницу…
09 апр '16 в 14:17
1 ответ

Черта "Нет экземпляра для", которая уже реализована

Я хотел бы использовать Слуги ClientM монада с finally :: MonadBaseControl IO m => m a -> m b -> m a, но столкнулся с ошибкой No instance for (MonadBaseControl IO ClientM), Как ни странно, этот точный экземпляр уже определен, будь то из вну…
20 май '18 в 21:57
0 ответов

Аутентификация для групп пользователей с разными разрешениями в Servant

Я хотел бы реализовать систему разрешений для моего API, в которой конечные точки, доступные администраторам, представляют собой расширенный набор тех, которые доступны суперпользователям, которые являются расширенным набором точек доступа для обычн…
31 дек '17 в 16:40
1 ответ

Присоединяйтесь к двум Network.Wai.Application

Я использую servant а также Network.Wai.Application.Static для json api и статического обслуживания файлов соответственно. Я хочу присоединиться к этим двум приложениям, так что если staticApp не обслуживается, запрос должен идти jsonApp, Я попыталс…
03 окт '16 в 14:59
1 ответ

Скорость веб-фреймворка haskell, GHCi vs Compiled

Сегодня я провел небольшой тест на своем локальном компьютере, чтобы сравнить скорость простого текста в различных веб-фреймворках на Haskell, и заметил кое-что странное. Почти все фреймворки, которые я тестировал, работали лучше, когда они запускал…
19 сен '17 в 09:36
3 ответа

Использование Слуги с Шекспиром Йесод (Гамлет, Юлий, Люциус)

Как я могу использовать Шекспира (из yesod) для API веб-сервисов? Я попробую: type TestAPI = "tests" :> Get '[JSON] [Test] :<|> "Test.html" :> Get '[HTML] Html serverTestAPI :: ServerT TestAPI AppM serverTestAPI = tests :<|> test :…
12 апр '16 в 08:21
2 ответа

Введите экземпляр и тип фантома

Я столкнулся со странной ошибкой, я не могу найти способ исправить это. Я использую серванта и пытаюсь создать универсальную библиотеку аутентификации (по умолчанию, например, без серверной части). Код следующий: type TokenProtect auth = AuthProtect…
17 июл '16 в 11:00
2 ответа

Есть ли способ указать на сервант-сервер 0.15, которого еще нет на последнем LTS haskell?

Я хотел бы использовать версию 0.15 вместо той, которая была доступна на последней LTS (12.22), обычно я добавляю ее в stack.yaml: extra-deps : - git: git@github.com:haskell-servant/servant.git commit: e3e5d2b23057c2c3409e5e210b613527baf3b77d Но они…
12 дек '18 в 14:00
1 ответ

Ошибка Кабала `Неизвестные поля: build-tool-зависящий`, пытающийся следовать руководству слуги

Я пытаюсь следовать руководству слуги и сталкиваюсь с ошибкой Кабала Unknown fields: build-tool-depends, Это мое tutorial.cabal файл (я получил это из github репо слуги): name: tutorial version: 0.10 synopsis: The servant tutorial homepage: http://h…
17 окт '17 в 17:30
1 ответ

Опалый новый тип

Одно из полей в моем типе данных для таблицы в моей базе данных PostgreSQL - это упаковка нового типа UUID называется ItemId, import Data.Profunctor.Product.TH (makeAdaptorAndInstance) import Data.DateTime (DateTime) import Data.UUID import GHC.Gene…
13 апр '17 в 18:53
1 ответ

Как разобрать это сообщение об ошибке проверки типа GHC?

Я был озадачен этой ошибкой проверки типа GHC (версия 8.4.3). Это выдержка из базы кода Haskell Servant, над которой я работаю. Если кто-то может объяснить причину этого сообщения, я был бы очень благодарен. Извиняюсь за длину кода, но я не смог уме…
23 авг '18 в 06:05
1 ответ

Понимание, почему MVar не обновляется?

Учитывая следующее веб-приложение "TinyUrl": import Prelude () import Prelude.Compat import Data.Aeson.Types import GHC.Generics import Lucid import Network.Wai import Network.Wai.Handler.Warp import Servant import Servant.HTML.Lucid import Control.…
20 окт '17 в 11:55