Advertisement
Guest User

Untitled

a guest
Nov 24th, 2018
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. void client::http1_1(const char *argv[]) {
  2.     int port = std::stoi(argv[2]);
  3.     std::string server_ip = argv[1];
  4.     std::ifstream inFile;
  5.     client::net::socketstream ss;
  6.     std::string s;
  7.  
  8.     inFile.open(argv[3]);
  9.     if (!inFile) {
  10.         std::cerr << "Unable to open file";
  11.         exit(1);
  12.     }
  13.  
  14.     if (ss.open(server_ip, port)) {
  15.         std::vector<std::string> requests;
  16.         while (std::getline(inFile, s))
  17.             requests.push_back(s);
  18.         // Start receiving thread
  19.         std::thread receiving(&receive_thread, requests, std::ref(ss));
  20.         for (int i = 0; i < requests.size(); i++) {
  21.             std::vector<std::string> results;
  22.             boost::split(results, requests[i], [](char c) { return c == ' '; });
  23.             if (i != requests.size() - 1)
  24.                 request::GET(results[1], client::http_version_1_1, client::user_agent, server_ip, true,
  25.                              filesys::get_content_type(results[1]), ss);
  26.             else
  27.                 request::GET(results[1], client::http_version_1_1, client::user_agent, server_ip, false,
  28.                              filesys::get_content_type(results[1]), ss);
  29.             sem.notify();
  30.         }
  31.         receiving.join();
  32.     } else {
  33.         std::cerr << "Failed to connect to the server" << std::endl;
  34.     }
  35.  
  36. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement