#include "jsocket.h" #include "jdatagramsocket.h" #include #include #include using namespace jsocket; void http_1() { std::string buffer = "GET / HTTP/1.0\r\n\r\n"; std::string receive;; try { Socket c("127.0.0.1", 80); std::ostream &o = c.GetOutputStream(); std::istream &i = c.GetInputStream(); o << buffer << std::flush; do { i >> receive; std::cout << receive << std::endl; } while (!i.eof()); do { i >> receive; // std::cout << receive << " "; } while (!i.eof()); c.Close(); } catch (std::runtime_error &e) { std::cerr << "error: " << e.what() << std::endl; } } void http_2() { char *buffer = "GET / HTTP/1.0\r\n\r\n"; char receive[4098]; size_t length; try { Socket c("127.0.0.1", 80); c.Send(buffer, strlen(buffer)); do { length = c.Receive(receive, 4096); if (length == 0) { std::cerr << "Host disconnect" << std::endl; break; } receive[length] = '\0'; std::cout << receive << std::flush; } while (true); c.Close(); } catch (std::runtime_error &e) { std::cerr << "error: " << e.what() << std::endl; } } int main() { http_2(); }