digitalmars.D - std.net.curl - HTTP.Method.options - perform()
- "Alex" <no mail.com> Jul 24 2012
- "David Eagen" <davideagen mailinator.com> Jul 27 2012
- Johannes Pfau <nospam example.com> Jul 27 2012
Hello!
Why does this code print output when I run it?
- It only happens when the HTTP response Code is == 405
- 173.194.69.94 is a Google Server for testing
- Are there any default callbacks which make this output?
CODE:
http://pastebin.com/CZP86Gwh
OUTPUT:
http://pastebin.com/AkA3Fvw1 (Basically a HTML error page)
--Alex
Jul 24 2012
On Tuesday, 24 July 2012 at 16:45:49 UTC, Alex wrote:Hello! Why does this code print output when I run it? - It only happens when the HTTP response Code is == 405 - 173.194.69.94 is a Google Server for testing - Are there any default callbacks which make this output? CODE: http://pastebin.com/CZP86Gwh OUTPUT: http://pastebin.com/AkA3Fvw1 (Basically a HTML error page) --Alex
There must be a default onReceive that is writing that to stdout. If I add this line just before the perform() call the output is not generated: http.onReceive = (ubyte[] data) { /+ drop +/ return data.length; }; -David
Jul 27 2012
Am Fri, 27 Jul 2012 17:39:45 +0200 schrieb "David Eagen" <davideagen mailinator.com>:There must be a default onReceive that is writing that to stdout. If I add this line just before the perform() call the output is not generated: http.onReceive = (ubyte[] data) { /+ drop +/ return data.length; }; -David
I just had a quick look an this is not caused by the D interface. It's the default behavior of libcurl if no explicit callback is set. If desired we could add some code to the wrapper's initialize function to automatically set this callback to a dummy function, but silently dropping the data doesn't sound much better to me. ------------- Set this option to NULL to get the internal default function. The internal default function will write the data to the FILE * given with CURLOPT_WRITEDATA. ------------- http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPT_WRITEFUNCTION ------------- The internal CURLOPT_WRITEFUNCTION will write the data to the FILE * given with this option, or to stdout if this option hasn't been set. ------------- http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTWRITEDATA
Jul 27 2012









"David Eagen" <davideagen mailinator.com> 