LlRequestURL: Difference between revisions
Jump to navigation
Jump to search
Kireji Haiku (talk | contribs) mNo edit summary |
Kireji Haiku (talk | contribs) m added tip |
||
| Line 12: | Line 12: | ||
|constants | |constants | ||
|examples= | |examples= | ||
{{LSL Tip|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: | This script requests a new URL after region restart: | ||
<LSL> | <LSL> | ||
| Line 73: | Line 74: | ||
else if (method == URL_REQUEST_GRANTED) | else if (method == URL_REQUEST_GRANTED) | ||
{ | { | ||
url = body; | |||
key owner = llGetOwner(); | key owner = llGetOwner(); | ||
llLoadURL(owner, "Click to visit my URL!", | llLoadURL(owner, "Click to visit my URL!", url); | ||
// check every 5 mins for dropped URL | // check every 5 mins for dropped URL | ||
Revision as of 06:27, 6 October 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 |