Difference between revisions of "Http success (event)"

From ComputerCraft Wiki
Jump to: navigation, search
(Added some example code)
(Trim a bit, clarify description, point back at the handle description in HTTP API)
 
Line 1: Line 1:
{{NeedsWork|A demonstration on the use and handling of this event would be beneficial. ''[[User:AfterLifeLochie|AfterLifeLochie]] 15:52, 30 November 2012 (MSK)''}}
 
 
 
{{Event
 
{{Event
 
|name=http_success
 
|name=http_success
|desc=Fired when a call to [[http.request|http.request()]], [[http.get|http.get()]] or [[http.post|http.post()]] completes successfully.
+
|desc=Fired when a call to [[http.request]] completes successfully, and used internally in [[http.get]] and [[http.post]].
|return1=The URL to the website.
+
|return1=The URL to the website
|return2=A table containing functions of operations to perform on the requests reply
+
|return2=A [[HTTP (API)#Handles|handle]] that allows reading the response sent from the server
 
}}
 
}}
 
{{Example
 
{{Example

Latest revision as of 23:03, 5 May 2013


Grid Modem.png  Event http_success
Fired when a call to http.request completes successfully, and used internally in http.get and http.post.
Returned Object 1 The URL to the website
Returned Object 2 A handle that allows reading the response sent from the server


Grid paper.png  Example
Prints the response code from the server and the text returned from the server
Code
http.request( "http://www.example.com" )
event, url, handle = os.pullEvent( "http_success" )
print( "Got a response with the status code: "..handle.getResponseCode() )
print( "With the text: "..handle.readAll() )
handle:close()



Grid paper.png  Example
Prints all the available functions to call on the response from the server
Code
http.request( "http://www.example.com" )
while true do
  event, url, handle = os.pullEvent( "http_success" )
  for k, v in pairs( handle ) do
    print( k )
  end
end