int main() { AHTTPRequestHeader request; AHTTPResponseHeader response; //a_Build request request.useUrl().parse(ASWNL("http://127.0.0.1/ping")); try { AFile_Socket socket; socket.open("127.0.0.1", 12345, true); request.toAFile(socket); response.fromAFile(socket); std::cout << "Response status: " << response.getStatusCode() << std::endl; } catch(AException& ex) { std::cerr << ex.what() << std::endl; } catch(...) { std::cerr << "Unknown exception" << std::endl; } return 0; }
int main(int argc, char **argv) { if (argc < 2) { std::cout << "Usage: this <url> <targetfile>\r\n"; std::cout << "\r\nExample: this http://localhost:8000/myrequest.jsp savefile.txt" << std::endl; return -1; } AFile_Socket socket; //a_Parse URL AHTTPRequestHeader requestHdr; requestHdr.useUrl().parse(argv[1]); AFile_Physical savefile(argv[2], "w"); AString hostAddr = g_ApplicationLibraryInstance.getIPFromAddress(requestHdr.useUrl().getServer()); requestHdr.setMethod("GET"); requestHdr.setPair("Host", hostAddr); requestHdr.setPair("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.6) Gecko/20040206 Firefox/0.8"); requestHdr.setPair("Accept", "application/x-shockwave-flash,text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1"); requestHdr.setPair("Accept-Language", "en-us,en;q=0.5"); requestHdr.setPair("Accept-Encoding", "gzip,deflate"); requestHdr.setPair("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.7"); requestHdr.setPair("Accept", "*/*"); requestHdr.setPair("Connection", "close"); AString data(2048, 1024); try { //a_Send request socket.open(hostAddr, requestHdr.useUrl().getPort(), true); requestHdr.emit(socket); //a_Read response char c = '\x0'; while (socket.isNotEof()) { if (0 == socket.read(c)) AThread::sleep(20); else data.append(c); } socket.close(); data.debugDump(); savefile.write(data); savefile.close(); } catch(AException& e) { std::cout << e.what() << std::endl; } return 0; }