1
0
mirror of https://github.com/SquidDev-CC/CC-Tweaked synced 2024-12-26 01:50:29 +00:00
CC-Tweaked/doc/events/http_failure.md
Jonathan Coates 8a203e7454
Re-license several more files under MPL-2.0
- Several files where @MCJack123 is the exclusive contributor. He has
   signed over all contributions to "any OSI-approved license". Thank
   you!

 - Various the file handle classes: Looking at these again, I don't
   think they contain any of the original code.
2023-03-28 10:28:59 +01:00

1.3 KiB

module: [kind=event] http_failure see: http.request To send an HTTP request.

The @{http_failure} event is fired when an HTTP request fails.

This event is normally handled inside @{http.get} and @{http.post}, but it can still be seen when using @{http.request}.

Return Values

  1. @{string}: The event name.
  2. @{string}: The URL of the site requested.
  3. @{string}: An error describing the failure.
  4. @{http.Response}|@{nil}: A response handle if the connection succeeded, but the server's response indicated failure.

Example

Prints an error why the website cannot be contacted:

local myURL = "https://does.not.exist.tweaked.cc"
http.request(myURL)
local event, url, err
repeat
    event, url, err = os.pullEvent("http_failure")
until url == myURL
print("The URL " .. url .. " could not be reached: " .. err)

Prints the contents of a webpage that does not exist:

local myURL = "https://tweaked.cc/this/does/not/exist"
http.request(myURL)
local event, url, err, handle
repeat
    event, url, err, handle = os.pullEvent("http_failure")
until url == myURL
print("The URL " .. url .. " could not be reached: " .. err)
print(handle.getResponseCode())
handle.close()