====== Web ====== This object allows you to download data. ===== Functions ===== ==== Web ==== Constructor function. === Syntax === var myObject = new Web(eventsAndOptions); === Arguments === - eventsAndOptions - (object) the events that can be called * onFinished - ([[#onFinished|onFinished]]) called when the data has been downloaded * onDownloadProgress - ([[#onDownloadProgress|onDownloadProgress]]) called when the download progresses * onError - ([[#onError|onError]]) called when an error has occured * file - ([[en:code:data:file|File]] or string) the file or filename to use as a destination for the downloaded data, if this is not set the data will be stored into RAM === Example === var myObject = new Web(); var myObject = new Web({ onFinished: function() { Console.print("Finished!"); }, file: "myFile.txt" }); ===== Methods ===== ==== download ==== Start downloading. === Syntax === myObject.download(url, options); myObject.download(url); === Arguments === - url - (string) the url of the resource to download - options - (object) options * rawHeaders - (object) raw headers to set * method - (Method) the method to use (get or post) * postData - (object) post data to send * rawData - (string) raw post data to send [//Since version 3.11.0//] * query - (object) query items * user - (string) the username to use if asked * password - (string) the password to use if asked === Returns === * (Web) this Web === Exceptions === * (OpenFileError) unable to open the destination file === Notes === This method is asynchronous, this means that it will return before the data is downloaded. To know when this is done use the [[#onFinished|onFinished]] event or the [[#isDownloading|isDownloading]] method. ==== isDownloading ==== Returns true if the data is still being downloaded. === Syntax === myObject.isDownloading(); === Returns === * (boolean) true if the data is still being downloaded ==== toImage ==== Returns the downloaded data as an [[en:code:core:image|Image]]. === Syntax === myObject.toImage(); === Returns === * ([[en:code:core:image|Image]]) the image === Notes === You cannot use this method if you specified a destination file as no data is kept in memory. ==== toText ==== Returns the downloaded data as text. === Syntax === myObject.toText(encoding); myObject.toText(); === Arguments === - encoding - ([[en:code:core:global#encoding|Encoding]]) the encoding to use === Returns === * (string) the text === Notes === You cannot use this method if you specified a destination file as no data is kept in memory. ==== toRawData ==== Returns the downloaded data as [[en:code:core:rawdata|RawData]]. === Syntax === myObject.toRawData(); === Returns === * ([[en:code:core:rawdata|RawData]]) the raw data === Notes === You cannot use this method if you specified a destination file as no data is kept in memory. ==== cancel ==== Cancel the download. === Syntax === myObject.cancel(); === Returns === * (Web) this Web ===== Events ===== ==== onFinished ==== Called when the data has been downloaded. === Syntax === myObject.onFinished = function() {}; === Example === myObject.onFinished = function() { //Event action }; ==== onDownloadProgress ==== Called when the download progression has changed. === Syntax === myObject.onDownloadProgress = function(bytesReceived, bytesTotal) {}; === Arguments === - bytesReceived - (integer) received byte count - bytesTotal - (integer) total byte count === Example === myObject.onDownloadProgress = function(bytesReceived, bytesTotal) { //Event action }; ==== onError ==== Called when an error occurs. === Syntax === myObject.onError = function(errorText) {}; === Arguments === - errorText - (string) a text describing the error === Example === myObject.onError = function(errorText) { //Event action }; ===== Enumerations ===== ==== Method ==== The download method. === Values === - Get: use "get" method (default) - Post: use "post" method