LlRequestURL: Difference between revisions
Jump to navigation
Jump to search
Kireji Haiku (talk | contribs) m why are the xml tages sometimes all upper-case and sometimes not? that's weird |
Omei Qunhua (talk | contribs) m Corrected 2nd example which had been corrupted by a previous editor on 24-Sept-12 so that it would not compile |
||
| Line 144: | Line 144: | ||
} | } | ||
http_request(key | http_request(key id, string method, string body) | ||
{ | { | ||
if (method == URL_REQUEST_DENIED) | if (method == URL_REQUEST_DENIED) | ||
Revision as of 08:31, 15 December 2012
| LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: key llRequestURL( );| 0.0 | Forced Delay |
| 10.0 | Energy |
Requests one HTTP:// url for use by this script. The http_request event is triggered with the result of the request.
Returns a key that is the handle used for identifying the result in the http_request event.
Caveats
- When a region is (re)started all HTTP server URLs are automatically released and invalidated.
- Use CHANGED_REGION_START to detect this so new URL can be requested.
- The number of available URLs is a limited resource, that is to say, a script can only have so many open URLs. See LSL http_server#Resource Limitations for details.
- When abandoning a URL, always release it with llReleaseURL, otherwise it will leak.
Examples
| Important: Never ever forget to release a URL again which you have requested! URLs are region resources just like prims. If you take them all you can get into big trouble with the sim owner and/or estate managers. |
This script requests a new URL after region restart: <lsl> string url; key urlRequestId; key selfCheckRequestId;
request_url() {
llReleaseURL(url); url = "";
urlRequestId = llRequestURL();
}
throw_exception(string inputString) {
key owner = llGetOwner(); llInstantMessage(owner, inputString);
// yeah, bad way to handle exceptions by restarting. // However this is just a demo script...
llResetScript();
}
default {
on_rez(integer start_param)
{
llResetScript();
}
changed(integer change)
{
if (change & (CHANGED_OWNER
See Also
Functions
| • | llRequestSecureURL | |||
| • | llGetFreeURLs | |||
| • | llReleaseURL | |||
| • | llHTTPResponse | |||
| • | llGetHTTPHeader |
Articles
| • | LSL http server |