я получаю запрос GET и хочу отправить текстовое сообщение в ответ на it.I есть следующий код, но я получаю ошибку при слеженииHaskell Скотти Вебсервер отправить текст ответ
{-# LANGUAGE OverloadedStrings #-}
import Web.Scotty
import Network.Wai.Middleware.RequestLogger
import Data.Monoid (mconcat)
main = scotty 4000 $ do
middleware logStdoutDev
get "/" $ do
beam<- param "q"
text $ "The message which I want to send"
Ошибку Я нахожусь получать, когда я пытаюсь запустить сервер является
No instance for (Parsable t0) arising from a use of ‘param’
The type variable ‘t0’ is ambiguous
Note: there are several potential instances:
instance Parsable() -- Defined in ‘scotty-0.9.1:Web.Scotty.Action’
instance Parsable Bool
-- Defined in ‘scotty-0.9.1:Web.Scotty.Action’
instance Parsable Data.ByteString.Lazy.Internal.ByteString
-- Defined in ‘scotty-0.9.1:Web.Scotty.Action’
...plus 9 others
In a stmt of a 'do' block: beam <- param "q"
In the second argument of ‘($)’, namely
‘do { beam <- param "q";
text $ "The message I want to send" }’
In a stmt of a 'do' block:
get "/"
$ do { beam <- param "q";
text $ "The message I want to send" }
мне нужно импортировать модуль Получение этой ошибки Не в области видимости сделать: конструктор типа или класса «Text» , когда я делаю пучок <- PARAM «д» :: ActionM текст – custosat
'Text' происходит от' данных. Текст' –
Data.Text дает эту ошибку. не могли соответствовать ожидается тип Data.Text.Internal.Lazy.Text ' с фактическим типом «Текст» NB: «Data.Text.Internal.Lazy.Text» определен в «Data.Text.Internal .Lazy ' ' Текст 'определен в' Data.Text.Internal ' Во втором аргументе' ($) ', а именно: «beam» В блоке «do»: текст $ beam Извинения если это вопрос noob. Просто познакомился с замечательным миром haskell – custosat