Class HTTP

java.lang.Object
org.daypilot.json.HTTP

public class HTTP extends Object
Convert an HTTP header to a JSONObject and back.
  • Field Details

  • Constructor Details

    • HTTP

      public HTTP()
  • Method Details

    • toJSONObject

      public static JSONObject toJSONObject(String string) throws JSONException
      Convert an HTTP header string into a JSONObject. It can be a request header or a response header. A request header will contain
      {
          Method: "POST" (for example),
          "Request-URI": "/" (for example),
          "HTTP-Version": "HTTP/1.1" (for example)
       }
      A response header will contain
      {
          "HTTP-Version": "HTTP/1.1" (for example),
          "Status-Code": "200" (for example),
          "Reason-Phrase": "OK" (for example)
       }
      In addition, the other parameters in the header will be captured, using the HTTP field names as JSON names, so that
          Date: Sun, 26 May 2002 18:06:04 GMT
          Cookie: Q=q2=PPEAsg--; B=677gi6ouf29bninvalid input: '&b'=2invalid input: '&f'=s
          Cache-Control: no-cache
      become
      {...
          Date: "Sun, 26 May 2002 18:06:04 GMT",
          Cookie: "Q=q2=PPEAsg--; B=677gi6ouf29bninvalid input: '&b'=2invalid input: '&f'=s",
          "Cache-Control": "no-cache",
       ...}
      It does no further checking or conversion. It does not parse dates. It does not do '%' transforms on URLs.
      Parameters:
      string - An HTTP header string.
      Returns:
      A JSONObject containing the elements and attributes of the XML string.
      Throws:
      JSONException
    • toString

      public static String toString(JSONObject o) throws JSONException
      Convert a JSONObject into an HTTP header. A request header must contain
      {
          Method: "POST" (for example),
          "Request-URI": "/" (for example),
          "HTTP-Version": "HTTP/1.1" (for example)
       }
      A response header must contain
      {
          "HTTP-Version": "HTTP/1.1" (for example),
          "Status-Code": "200" (for example),
          "Reason-Phrase": "OK" (for example)
       }
      Any other members of the JSONObject will be output as HTTP fields. The result will end with two CRLF pairs.
      Parameters:
      o - A JSONObject
      Returns:
      An HTTP header string.
      Throws:
      JSONException - if the object does not contain enough information.