Safe Haskell | None |
---|---|
Language | Haskell2010 |
A library for listing "files" in an http "directory".
import Network.HTTP.Directory import qualified Data.Text as T import Network.HTTP.Client (newManager) import Network.HTTP.Client.TLS (tlsManagerSettings) main = do mgr <- newManager tlsManagerSettings files <- httpDirectory mgr "https://example.com/some/dir/" mapM_ T.putStrLn files httpFileSize mgr (head files) >>= print httpLastModified mgr (head files) >>= print
Synopsis
- httpDirectory :: Manager -> String -> IO [Text]
- httpFileSize :: Manager -> String -> IO (Maybe Integer)
- httpLastModified :: Manager -> String -> IO (Maybe UTCTime)
- httpManager :: IO Manager
- httpRedirect :: Manager -> String -> IO (Maybe ByteString)
- httpRedirects :: Manager -> String -> IO [ByteString]
Documentation
httpDirectory :: Manager -> String -> IO [Text] Source #
List the file links (hrefs) in an http directory
Raises an error if the http request fails.
Note if the directory (webpage) url is redirected to a different path
you may need to use httpRedirect
to determine
the actual final url prefix for relative links
(files).
httpFileSize :: Manager -> String -> IO (Maybe Integer) Source #
Try to get the filesize (Content-Length field) of an http file
Raises an error if the http request fails.
httpLastModified :: Manager -> String -> IO (Maybe UTCTime) Source #
Try to get the modification time (Last-Modified field) of an http file
Raises an error if the http request fails.
Since: 0.1.1
httpManager :: IO Manager Source #
alias for 'newManager tlsManagerSettings' so one does not need to import http-client etc
Since: 0.1.2
httpRedirect :: Manager -> String -> IO (Maybe ByteString) Source #
Return final redirect for an url
httpRedirects :: Manager -> String -> IO [ByteString] Source #
Returns the list of http redirects for an url in reverse order (ie last redirect is listed first)