It is unlimited, you just have to cast output to ubyte[]:

std.file.write("logo3w.png", cast(ubyte[]) cl.get("http://www.google.cz/images/srpr/logo3w.png";));

On 20.1.2012 17:53, Xan xan wrote:
Thank you very much, Bystroushaak.
I see you limite httpclient to xml/html documents. Is there
possibility of download any files (and not only html or xml). Just
like:

HTTPClient navegador = new HTTPClient();
auto file = navegador.download("http://www.google.com/myfile.pdf";)

?

Thanks a lot,



2012/1/20 Bystroushaak<bystrou...@kitakitsune.org>:
First version was buggy. I've updated code at github, so if you want to try
it, pull new version (git pull). I've also added new example into
examples/user_agent_change.d


On 20.1.2012 16:08, Bystroushaak wrote:

There are two ways:

Change global variable for module:

dhttpclient.DefaultHeaders = dhttpclient.IEHeaders; // or your own

This will change headers for all clients.

---

Change instance headers:

string[string] my_headers = dhttpclient.FFHeaders; // there are more
headers than just User-Agent and you have to copy it
my_headers["User-Agent"] = "My own spider!";

HTTPClient navegador = new HTTPClient();
navegador.setClientHeaders(my_headers);

---

Headers are defined as:

public enum string[string] FFHeaders = [
"User-Agent" : "Mozilla/5.0 (Windows; U; Windows NT 5.1; cs; rv:1.9.2.3)
Gecko/20100401 Firefox/3.6.13",
"Accept" :

"text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain",

"Accept-Language" : "cs,en-us;q=0.7,en;q=0.3",
"Accept-Charset" : "utf-8",
"Keep-Alive" : "300",
"Connection" : "keep-alive"
];

/// Headers from firefox 3.6.13 on Linux
public enum string[string] LFFHeaders = [
"User-Agent" : "Mozilla/5.0 (X11; U; Linux i686; cs; rv:1.9.2.3)
Gecko/20100401 Firefox/3.6.13",
"Accept" :

"text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain",

"Accept-Language" : "cs,en-us;q=0.7,en;q=0.3",
"Accept-Charset" : "utf-8",
"Keep-Alive" : "300",
"Connection" : "keep-alive"
];

Accept, Accept-Charset, Kepp-ALive and Connection are important and if
you redefine it, module can stop work with some servers.

On 20.1.2012 15:56, Xan xan wrote:

On the other hand, I see dhttpclient identifies as
"Mozilla/5.0 (Windows; U; Windows NT 5.1; cs; rv:1.9.2.3)
Gecko/20100401 Firefox/3.6.13"

How can I change that?

Reply via email to