fork download
  1. import std.stdio;
  2. import std.socket;
  3.  
  4. const HOST = "www.c-plusplus.de";
  5. const PATH = "/forum";
  6. const PORT = 80;
  7.  
  8. void main()
  9. {
  10. try
  11. {
  12. auto sock = new TcpSocket(AddressFamily.INET);
  13.  
  14. foreach(addr; getAddress(HOST, PORT))
  15. {
  16. try
  17. {
  18. sock.connect(addr);
  19. break;
  20. }
  21.  
  22. catch(SocketException e)
  23. {}
  24. }
  25.  
  26. if(!sock.isAlive)
  27. throw new SocketException("error connecting");
  28.  
  29. sock.send("GET " ~ PATH ~ "\r\n"
  30. "Host: " ~ HOST ~ "\r\n"
  31. "Connection: close\r\n"
  32. "HTTP/1.1\r\n"
  33. "\r\n");
  34.  
  35. auto result = new char[0];
  36. auto buf = new char[1024];
  37. ptrdiff_t recvd;
  38.  
  39. do result ~= buf[0 .. (recvd = sock.receive(buf))];
  40. while(recvd > 0);
  41.  
  42. write(result);
  43. }
  44.  
  45. catch(SocketException e)
  46. {
  47. writeln(e.msg);
  48. }
  49. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.d(14): Error: undefined identifier getAddress
prog.d(14): Error: function expected before (), not getAddress of type int
prog.d(14): Error: foreach: int is not an aggregate type
stdout
Standard output is empty