Re: Using guile's web client

2012-03-15 Thread Ian Price
Chris Vine writes: > Ah thanks, that's great. My "fault" was in assuming that in the absence > of documentation, the http-get procedure does what is "obvious" (ie what > other similar high-level http libraries do) and leaves the reading of > the body to read-response-body. I have now looked at

Re: Using guile's web client

2012-03-15 Thread Chris Vine
On Thu, 15 Mar 2012 01:14:31 + Ian Price wrote: [snip] > It's actually debatable whether or not this is your fault :). http-get > returns 2 values: the response and the body. When you call > read-response-body on the port, you are trying to read information > that has already been read, and so

Re: Using guile's web client

2012-03-14 Thread Nala Ginrut
To clarify, he used wrong usage of http-get is another issue need to be noticed. On Thu, Mar 15, 2012 at 11:55 AM, Nala Ginrut wrote: > I must say NO to NO. > You may try http-get directly in this situation and see if it returns. No > matter how you handle the values, it never return because of

Re: Using guile's web client

2012-03-14 Thread Nala Ginrut
I must say NO to NO. You may try http-get directly in this situation and see if it returns. No matter how you handle the values, it never return because of the error I mentioned. On Thu, Mar 15, 2012 at 10:11 AM, Ian Price wrote: > Nala Ginrut writes: > > > I'm afraid it's a real bug. > No, it's

Re: Using guile's web client

2012-03-14 Thread Ian Price
Nala Ginrut writes: > I'm afraid it's a real bug. No, it's not. See my response to him. :) -- Ian Price "Programming is like pinball. The reward for doing it well is the opportunity to do it again" - from "The Wizardy Compiled"

Re: Using guile's web client

2012-03-14 Thread Nala Ginrut
I'm afraid it's a real bug. read-response-body didn't check before it call bytevector-length. But actually, all the data has already been read. When it encounters , it should return the body immediately. The bug is, it checks bytevector-length first which cause (bytevector-length ). I didn't reali

Re: Using guile's web client

2012-03-14 Thread Ian Price
Chris Vine writes: > ((lambda() >(let ((uri (build-uri 'http > #:host "checkip.dyndns.com" > #:port 80 > #:path "/"))) > (display uri) > (newline) > (let ((r (http-get uri #:keep-alive? #t))) ^^ there's

Using guile's web client

2012-03-14 Thread Chris Vine
Hi, I have been playing around with guile-2.0.5's high-level web modules. In order to see if I understood them, I tried about the simplest thing I could think of: a GET request to checkip.dyndns.com to obtain my IP address. The following code works correctly provided I leave the commented out cod