CHttpRequest.h 633 B

1234567891011121314151617181920212223242526272829303132333435
  1. #pragma once
  2. #include <AK/String.h>
  3. #include <AK/URL.h>
  4. #include <LibCore/ObjectPtr.h>
  5. class CNetworkJob;
  6. class CHttpRequest {
  7. public:
  8. enum Method {
  9. Invalid,
  10. HEAD,
  11. GET,
  12. POST
  13. };
  14. CHttpRequest();
  15. ~CHttpRequest();
  16. const URL& url() const { return m_url; }
  17. void set_url(const URL& url) { m_url = url; }
  18. Method method() const { return m_method; }
  19. void set_method(Method method) { m_method = method; }
  20. String method_name() const;
  21. ByteBuffer to_raw_request() const;
  22. ObjectPtr<CNetworkJob> schedule();
  23. private:
  24. URL m_url;
  25. Method m_method { GET };
  26. };