send_http_request
The send_http_request function sends an HTTP request.
Syntax
send_http_request( params )
Arguments
| Argument | Description | 
|---|---|
| params | (table) Named parameters that configure the HTTP request. The table maps parameter names (string) to parameter values. For information about the parameters that you can set, see the following table. | 
Named Parameters
| Named Parameter | Description | 
|---|---|
| url | (string) The full URL for the HTTP request. If you provide a URL, the other parameters used to build the URL are not used. | 
| method | (string) The HTTP method to use ( GET,POST, orDELETE). The default is"GET". | 
| headers | (table) A table of HTTP headers to send with the request. The table must map header names to values. | 
| content | (string) For HTTP POST, the data to be sent with the post. | 
| site | (string) The site to which the HTTP request is sent. | 
| port | (integer) The port to which the HTTP request is sent. By default, the request is sent to port 80. | 
| uri | (string) The URI to request. | 
| params | (table) Additional parameters for the request. The table must map parameter names to parameter values. | 
| section | (string) The name of a section in the configuration file that contains transport related parameters such as SSL or proxy settings. For a list of the IDOL HTTP Client configuration parameters that you can set in the configuration file, see HTTP Client Parameters. | 
| options | (table) A table of HTTP client options, and values, to use for the request. For a list of the IDOL HTTP Client options that you can set in the table, see HTTP Client Parameters. | 
Returns
String. The HTTP response.
The send_http_request function can throw an exception if the request fails. You can catch an exception by calling send_http_request using the Lua function pcall.
Examples
The following example shows how to make a simple request:
local wikipedia_page = send_http_request(
   {url = "http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol"} )
                                                The following example shows how to make the same request but catch any exceptions with the Lua pcall function:
local result, response = pcall ( send_http_request,
   {url = "http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol"} )
                                                When the send_http_request function is successful, the result variable is true and response contains the response. If an exception is thrown from send_http_request, the result variable is false and response contains the error message.
The following examples demonstrate how to add additional named parameters:
local google_search = send_http_request(
   {site = "www.google.co.uk", port = 80, uri = "/search",
   params = {q = "http protocol", safe = "active"}} )local search = send_http_request(
   {site = "www.site.com", port = 80, uri = "/query",
   params = {text = "http headers", maxresults = "10"}
   headers = { Cache-Control = "no-cache" }} )