From: Tim X
Subject: http library recommendations
Date: 
Message-ID: <87slu92qju.fsf@tiger.rapttech.com.au>
Hi All,

I wanted to ask if anyone can recommend a CL library for retrieving
files using the http protocol. Note that I'm not after a CL based http
server, but rather just a library which supports interaction with an
http server. 

I'm hoping there is something suitable. While it probably wouldn't be
too difficult to implement basic protocol support, I'm hoping someone
has already dealt with the implementation differences re: socket
handling etc.

TIA

Tim 

-- 
Tim Cross
The e-mail address on this message is FALSE (obviously!). My real e-mail is
to a company in Australia called rapttech and my login is tcross - if you 
really need to send mail, you should be able to work it out!

From: drewc
Subject: Re: http library recommendations
Date: 
Message-ID: <ntybf.426857$1i.185946@pd7tw2no>
Tim X wrote:
> Hi All,
> 
> I wanted to ask if anyone can recommend a CL library for retrieving
> files using the http protocol. Note that I'm not after a CL based http
> server, but rather just a library which supports interaction with an
> http server. 

If it is just a trivial use of HTTP, there is ....  TRIVIAL-HTTP 
(http://www.cliki.net/TRIVIAL-HTTP), which as the name suggests, doesn't 
support much beyond grabbing a file,

If that's not enough for your needs, portable-aserve comes with 
NET.ASERVE.CLIENT, which i've used in the past (see a paste here: 
http://paste.lisp.org/display/5833), and as about as capable an HTTP 
library as i've found.

> I'm hoping there is something suitable. While it probably wouldn't be
> too difficult to implement basic protocol support, I'm hoping someone
> has already dealt with the implementation differences re: socket
> handling etc.

TRIVIAL-HTTP uses TRIVIAL-SOCKETS, which, as the name suggests, doesn't 
support much beyond basic socket capablities.

NET.ASERVE.CLIENT, on the other hand, uses ACL-COMPAT, which includes a 
fairly complete multi-implementation socket compatability thingie, based 
on the Allegro interface.

drewc

> 
> TIA
> 
> Tim 
> 


-- 
Drew Crampsie
drewc at tech dot coop
  "... the most advanced use of lisp in the field of bass lure sales"
	-- Xach on #lisp
From: Tim X
Subject: Re: http library recommendations
Date: 
Message-ID: <87oe4x2j65.fsf@tiger.rapttech.com.au>
drewc <·····@rift.com> writes:

> Tim X wrote:
> > Hi All,
> > I wanted to ask if anyone can recommend a CL library for retrieving
> > files using the http protocol. Note that I'm not after a CL based http
> > server, but rather just a library which supports interaction with an
> > http server.
> 
> If it is just a trivial use of HTTP, there is ....  TRIVIAL-HTTP
> (http://www.cliki.net/TRIVIAL-HTTP), which as the name suggests,
> doesn't support much beyond grabbing a file,
> 
> If that's not enough for your needs, portable-aserve comes with
> NET.ASERVE.CLIENT, which i've used in the past (see a paste here:
> http://paste.lisp.org/display/5833), and as about as capable an HTTP
> library as i've found.
> 
> > I'm hoping there is something suitable. While it probably wouldn't be
> > too difficult to implement basic protocol support, I'm hoping someone
> > has already dealt with the implementation differences re: socket
> > handling etc.
> 
> TRIVIAL-HTTP uses TRIVIAL-SOCKETS, which, as the name suggests,
> doesn't support much beyond basic socket capablities.
> 
> NET.ASERVE.CLIENT, on the other hand, uses ACL-COMPAT, which includes
> a fairly complete multi-implementation socket compatability thingie,
> based on the Allegro interface.
> 
> drewc
> 

thanks Drew. I was looking at and thinking about the aserv client, but
the trivial-http sounds worth checking out as I only need the basic
ability to retrieve a file.

Tim

-- 
Tim Cross
The e-mail address on this message is FALSE (obviously!). My real e-mail is
to a company in Australia called rapttech and my login is tcross - if you 
really need to send mail, you should be able to work it out!
From: Bruce Butterfield
Subject: Re: http library recommendations
Date: 
Message-ID: <1131345232.947083.97140@g49g2000cwa.googlegroups.com>
An alternative is to use cl-curl (http://www.cliki.net/cl-curl) which I
found more useful since it supports SSL and handles cookies and
redirects in a very straightforward manner. Since it is a (UFFI)
wrapper around libcurl it isn't a pure CL solution but it does the job
if your client can run in a unix/linux environment.