HTTP(1)                          User Commands                         HTTP(1)

NAME
       http - HTTP Client program

SYNOPSIS
       http [options] urls ...

       [--benchmark  ]  [--chunk  size  ] [--continue] [--cookie cookieString]
       [--debug] [--delete] [--form string] [--header  'key:  value']  [--host
       hostName]   [--http   version]  [--iterations  count]  [--log  logSpec]
       [--method  HTTP_METHOD]  [--nofollow]   [--noout]   [--password   pass]
       [--post]  [--printable]  [--put] [--range byteRanges] [--retries count]
       [--sequence] [--showCode] [--showHeaders]  [--single]  [--timeout  sec-
       onds] [--threads count] [--upload] [--user name] [--verbose] [--workers
       count]

DESCRIPTION
       The http command issues HTTP commands to  retrieve  files  from  a  web
       server.

OPTIONS
       --benchmark
              Output timing results after retrieving URLs.

       --chunk size
              Request  that  web  server  use  use  transfer  encoding for the
              response  and  break  the  response  data  into  chunks  of  the
              requested  size.  This is an Appweb web server custom header and
              will be ignored by other web servers.

       --continue
              Continue on errors. Default is to stop on the first error.

       --cookie cookieString
              Define a cookie string to send with the request.  Multiple  uses
              okay.

       --debug
              Run  in debug mode and disable all timeouts. Useful when running
              a server in the debugger to prevent the client from retrying  or
              killing the request.

       --delete
              Issue a DELETE request. This is an alias for --method DELETE.

       --form formData
              String  of body data to send with the request. Assumed to be URL
              encoded. ie. "name=paul&address=uk".  You cannot use this switch
              with either the --datafile or --form switches.

       --header "key: value"
              Add  a custom header to send with the request. Multiple --header
              switches can be supplied.

       --host name
              Prepend all URLs with the specified host.  For  example  if  '-h
              www.myHost.com:8888"  were used with the URL "/index.html", then
              http will retrieve http://www.myHost.com:8888.

       --http HTTP_VERSION
              Use the specified HTTP protocol. httpVersion  should  be  either
              '0' for HTTP/1.0 or 1 for HTTP/1.1.

       --iterations count
              Retrieve  the  URLs  iterations  times. Useful for load testing.
              This switch can also be abbreviated as -i.

       --log logSpec
              Specify a file to log messages.   The  syntax  is:  "--log  log-
              Name[,moduleName][:logLevel]".   Level  3 will trace the request
              and response headers.

       --method method
              Set the HTTP method. Values  may  be  "GET",  "PUT",  "OPTIONS",
              "TRACE".

       --nofollow
              Don't  automatically  follow  redirects.  Normal behaviour is to
              follow redirects and reissue the request if the server  responds
              with a redirection response (30X response).

       --noout
              Run  in  quiet mode and do no output. Suppress tracing requests.
              This switch can also be abbreviated as -n or as --quiet or -q.

       --password passPhrase
              Specify a password to send with the  request.  Requires  a  user
              name to be also specified via --user.

       --post Issue a POST request. This is an alias for --method POST.

       --printable
              Make  binary  output  printable  by printing hex digits for each
              character.

       --put  Issue a PUT request. This is an alias for --method PUT.

       --range byteRange
              Request that only the specified byte range of data  be  returned
              with  the  response.  This  will  add  a  "Range"  header to the
              request.  The range format   is:   Range:  bytes=n1-n2,n3-n4,...
              where  n1  is  first byte position and n2 is last byte position.
              Multiple --range switches can be supplied.  Examples:

              0-49             first 50 bytes
              50-99,200-249    Two 50 byte ranges from 50 and 200
              -50              Last 50 bytes
              1-               Skip first byte then emit the rest

       --retries retryCount
              Retry failed requests this number of times.

       --showCode
              Output the HTTP response code. If this switch is used, the  com-
              mand will always exit with zero status.

       --showHeaders
              Output HTTP headers. Useful for debugging.

       --single
              Single  step  between  requests by pausing for user input before
              proceeding.

       --threads loadThreads
              Number of threads to use. Each URL  will  be  retrieved  by  all
              threads. Useful only for load testing.

       --timeout seconds
              Specifies a timeout to use for each request in seconds.

       --upload
              Issue  a POST request with multipart mime encoding for the files
              specified on the command line. This is  an  alias  for  --method
              POST with files on the command line.

       --user user
              Specify  a  user name to send with the request. If a password is
              not specified via --password, the  program  will  prompt  for  a
              password  (which  will not be echoed). The username and password
              will be sent with the request according  to  the  authentication
              protocol required by the requested web server and requested doc-
              ument.

       --verbose
              Verbose mode. Trace activity to stdout. Can by specified  multi-
              ple  times  for  more  verbose tracing.  This switch can also be
              abbreviated as -v.

       --workers count
              Specify the number of worker threads to use. Worker threads tem-
              porarily assigned to process callbacks.

REPORTING BUGS
       Report bugs to dev@embedthis.com.

COPYRIGHT
       Copyright (C) 2003-2012 Embedthis Software.

http                              March 2012                           HTTP(1)