HTTP (API)
The HTTP API must be enabled in ComputerCraft.cfg before being used. To enable it see this tutorial.
The HTTP API allows interfacing with websites and downloading from them.
HTTP (API) | ||
---|---|---|
Function | Return values | Description |
http.request(string url [, string postData [, table headers]]) | nil | Sends a HTTP request to a website, asynchronously. |
http.get(string url [, table headers]) | table handle | Sends a HTTP GET request to a website, synchronously. |
http.post(string url, string postData [, table headers]) | table handle | Sends a HTTP POST request to a website, synchronously. |
http.checkURL(string url) | boolean success [, string error] | Checks if a URL is valid and is included in the HTTP whitelist. |
http.request is used to send a HTTP request that completes asynchronously and generates an event (one of http_success or http_failure). http.get and http.post execute http.request and block until the operation completes.
Handles
All three operations make use of handles, tables that contain functions to read data returned from the HTTP server. These handles act the same as the I/O handles returned by fs.open in read-only text mode, implementing the close, readLine, and readAll methods. These handles also implement the following function:
Function h.getResponseCode | |
Returns the numerical HTTP response code sent by the server | |
Syntax | h.getResponseCode() |
Returns | number HTTP response code |
Part of | ComputerCraft |
API | HTTP |
Headers
As of ComputerCraft 1.63, you can optionally set custom headers. This also means that you can override default headers such as the User-Agent.
Example | |
Sends a request to http://example.com/ with the custom headers. | |
Code |
local headers = { [ "User-Agent" ] = "A custom user-agent!", -- Overrides the default User-Agent. [ "Hi" ] = "Hello" -- A non-standard custom header field. } http.get( "http://example.com/", headers ) |