org.json
Class HTTP

java.lang.Object
  extended by org.json.HTTP

public class HTTP
extends Object

Convert an HTTP header to a JSONObject and back.


Field Summary
static String CRLF
          Carriage return/line feed.
 
Constructor Summary
HTTP()
           
 
Method Summary
static JSONObject toJSONObject(String string)
          Convert an HTTP header string into a JSONObject.
static String toString(JSONObject o)
          Convert a JSONObject into an HTTP header.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CRLF

public static final String CRLF
Carriage return/line feed.

See Also:
Constant Field Values
Constructor Detail

HTTP

public HTTP()
Method Detail

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=677gi6ouf29bn&b=2&f=s
    Cache-Control: no-cache
become
{...
    Date: "Sun, 26 May 2002 18:06:04 GMT",
    Cookie: "Q=q2=PPEAsg--; B=677gi6ouf29bn&b=2&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.