Haskell:
Verkkosivun lataaminen
How to: - Kuinka tehdään:
Haskellilla webbisivujen lataaminen onnistuu kirjastoilla kuten http-conduit
. Asentakaa ensin tarvittavat kirjastot:
-- web-sivun lataamiseen
import Network.HTTP.Simple
-- esimerkkikoodi web-sivun lataamiseksi
main :: IO ()
main = do
response <- httpLBS "http://example.com"
let statusCode = getResponseStatusCode response
if statusCode == 200
then putStr "Sivun lataus onnistui!\n"
else putStr "Jokin meni pieleen.\n"
print $ getResponseBody response
Suoritetaan ja saadaan tulosteeksi sivun sisältö, tai virheviesti jos lataus epäonnistuu.
Deep Dive - Syväsukellus:
Web-sivujen lataus Haskellissa on kehittynyt ajan myötä. Alkuaikoina käytettiin peruskirjastoja kuten Network.HTTP
, mutta moderneissa sovelluksissa siirryttiin korkeamman tason http-conduit
-kaltaisiin ratkaisuihin, joissa tietoturva ja helppokäyttöisyys ovat parempia. Vaihtoehtoja ovat muun muassa http-client
ja wreq
. Ne tarjoavat erilaista käytettävyyttä ja suorituskykyä.
Toimiakseen, nämä kirjastot hyödyntävät Haskellin laiskan evaluaation ominaisuutta. Se mahdollistaa tehokkaan datan käsittelyn ilman tarvetta ladata koko sivun sisältöä muistiin. Yksi huomionarvoinen seikka on, että koneen verkkoyhteyden asetukset voivat vaikuttaa latausprosessiin.
See Also - Katso Myös:
- Haskell
http-conduit
-kirjaston dokumentaatio: http-conduit on Stackage Network.HTTP.Simple
API-esimerkit: Network.HTTP.Simple- Haskellin virallinen oppaan verkossa: Learn You a Haskell for Great Good!
- HTTP-protokollan yleiskatsaus: HTTP - MDN Web Docs