Used as a URL type with such commands as put and get to designate a file on the World Wide Web.Syntax:
http
Examples:
set the htmlText of field 1 to URL "http://example.org/data.html"
put URL "http://www.example.com/output?this=that" into testData
put line 2 of URL "http://www.example.com/stuff/" into testDate
Use the http keyword to work with files on the Web.
The URL scheme "http" indicates information located on a web server. An http URL(keyword) consists of:
1. The string "http://" 2. An optional user name and password, separated by a colon (:) and
followed by "@"
3. The name of the server (for instance, "example.net") followed by a
slash
4. The location of the resource (often, a file path).
Here are some examples of valid http URLs:
- `http://www.example.com`: The main page for the server
`www.example.com`
- `http://www.example.com/directory/`: A directory on the server
- `http://www.example.com/directory/file.html`: A file on the server
- `http://user:password@www.example.com/file.txt`: A file accessed by a
user name and password
generated by a query--possibly generated by a CGI
If your user name or password contains any of the
characters ":", "@", "/", ".", or "|", use the URLEncode function to safely encode the user name or password before putting them into the URL(keyword). The following example constructs a URL(keyword) for a user whose password contains the "@" character:
put "name" into userName put "jdoe@example.com" into userPassword put "http://" & userName & ":" & URLEncode(userPassword) \
& "@www.example.net/index.html" into fileURLToGet
get URL fileURLToGet
An http URL(keyword) is a container, and you can use the
expression URL httpURL in any statement where any other container
type is used. When you get the value of an http URL(keyword),
LiveCode downloads the URL(keyword) from the server. (If you have
previously cached the URL with the load command, it fetches
the URL(keyword) from the cache.)
You can upload data to a web server by putting a value into an http URL(keyword), as in the following statement :
put field "Info" into URL "http://www.example.net/info.html"
However, because most web servers do not allow HTTP uploads, the attempt
usually will not be successful. (Check with the server's administrator
to find out how and where to upload files.)
Transferring a URL(keyword) by using it in an expression is a blocking operation: that is, the handler pauses until LiveCode is finished getting the URL(keyword). Since contacting a server may take some time due to network lag, URL(keyword) operations may take long enough to be noticeable to the user.
The following example shows how to set a flag in a global variable to prevent multiple downloads. The variable "downloadInProgress" is set to true while a download is going on, and back to false when the download concludes. If the user clicks the button again while the download is still going on, the handler simply beeps:
on mouseUp
global downloadInProgress if downloadInProgress then
beep exit mouseUp
end if put true into downloadInProgress -- about to start put URL (field "Page to get") into field "Command Result" put false into downloadInProgress -- finished end mouseUp
For technical information about URLs and the http URL(keyword)
scheme, see [RFC 1630](https://tools.ietf.org/html/rfc1630).
The http keyword is part of the
Internet library on desktop platforms. To ensure that the keyword works in a desktop standalone application, you must include this custom library when you create your standalone. In the Inclusions pane of the Standalone Application Settings window, make sure the "Internet" script library is selected.
On iOS and Android, you can use the http keyword without the need for the Internet library. When specifying URLs for iOS and Android, you must use the appropriate form that conforms to [RFC 1630](https://tools.ietf.org/html/rfc1630).
Changes: The http keyword was moved to the Internet library in version 1.1. In previous versions, this functionality was part of the engine.
See also: put (command),load (command),group (command),delete URL (command),get (command),libURLSetCustomHTTPHeaders (command),function (control structure),libURLLastRHHeaders (function),result (function),files (function),libURLErrorData (function),value (function),Internet library (library),library (library),startup (message),openBackground (message),preOpenStack (message),openStack (message),preOpenCard (message),