0
我第一次嘗試使用Scotty,我似乎無法讓我的GET請求過去。返回的響應類型如何使用Scotty在前端顯示來自HTTP GET請求的響應?
IO (Response bytestring-0.10.8.1:Data.ByteString.Lazy.Internal.ByteString)
我知道我需要將其轉換爲一個類型,可以是由斯科蒂輸出,但我無法弄清楚如何做到這一點。
我完整的代碼:
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
module Main where
import Control.Lens
import Control.Monad.IO.Class
import Data.Aeson (FromJSON, ToJSON, Value, decode,
encode)
import Data.Map as Map
import GHC.Generics
import Lib
import Network.Wreq as Wreq
import Web.Scotty as Scotty
main :: IO()
main =
scotty 3000 $
Scotty.get "/" $ do
-- html "Hello World!"
Wreq.get"https://www.metaweather.com/api/location/search/?query=New%20York"
我嘗試使用LiftIO但仍然給了我一個類型錯誤。我想知道我應該如何轉換我的Response,以便我可以在前端顯示它,就像使用html顯示我的初始「Hello World」一樣。
非常感謝您的回覆。 但是我仍然得到這個代碼的錯誤。 我編輯了第二行,包括LiftIO以使其正確運行。 r < - liftIO $ Wreq.get「https://www.metaweather.com/api/location/search/?query=New%20York」 –
有什麼快速簡便的方法將ByteString轉換爲文本? (這是我需要使用HTML而不是原始的) –
Woops!我忘了'liftIO'。謝謝,我已經更新了答案 –