Difference between revisions of "LlEscapeURL"

From Second Life Wiki
Jump to: navigation, search
m (added one line in the example script to show that "LSL Portal" will be escaped to "LSL%20Portal")
m (added a reference to URLEncode() so searches for that term return this page in the results. (most programmers know such functions by this name))
Line 4: Line 4:
 
|func_footnote=To clarify, numbers and ASCII7 alphabetical characters are NOT escaped. If a character requires more then one byte in UTF-8 byte form then it returns multiple %xx sequences chained together.
 
|func_footnote=To clarify, numbers and ASCII7 alphabetical characters are NOT escaped. If a character requires more then one byte in UTF-8 byte form then it returns multiple %xx sequences chained together.
 
|func_desc
 
|func_desc
|return_text=that is the escaped/encoded version of '''url''', replacing spaces with %20 etc. The function will escape any character not in [a-zA-Z0-9] to %xx where xx is the hexadecimal value of the character in UTF-8 byte form.
+
|return_text=that is the escaped/encoded version of '''url''', replacing spaces with %20 etc. The function will escape any character not in [a-zA-Z0-9] to %xx where xx is the hexadecimal value of the character in UTF-8 byte form. This function is similar to the URLEncode()function found in many other languages.
 
|spec
 
|spec
 
|caveats=* The function is not appropriate for escaping a URL all at once because the ':' after the protocol and all of the '/' characters delimiting the various parts will be escaped.  Instead, build the URL in parts, escaping parts of the path and query string arguments as needed.  
 
|caveats=* The function is not appropriate for escaping a URL all at once because the ':' after the protocol and all of the '/' characters delimiting the various parts will be escaped.  Instead, build the URL in parts, escaping parts of the path and query string arguments as needed.  

Revision as of 09:50, 23 August 2012

Summary

Function: string llEscapeURL( string url );

Returns a string that is the escaped/encoded version of url, replacing spaces with %20 etc. The function will escape any character not in [a-zA-Z0-9] to %xx where xx is the hexadecimal value of the character in UTF-8 byte form. This function is similar to the URLEncode()function found in many other languages.

• string url

To clarify, numbers and ASCII7 alphabetical characters are NOT escaped. If a character requires more then one byte in UTF-8 byte form then it returns multiple %xx sequences chained together.

Caveats

  • The function is not appropriate for escaping a URL all at once because the ':' after the protocol and all of the '/' characters delimiting the various parts will be escaped. Instead, build the URL in parts, escaping parts of the path and query string arguments as needed.
All Issues ~ Search JIRA for related Bugs

Examples

<lsl> // provides a clickable link to the LSL Portal by escaping the space in the title // "LSL Portal" here becomes "LSL%20Portal"

string title = "LSL Portal";

default {

   state_entry()
   {
       llOwnerSay("http://wiki.secondlife.com/wiki/" + llEscapeURL(title));
   }

}

</lsl>

See Also

Functions

• llUnescapeURL

Articles

• UTF-8
• Base64

Deep Notes

History

  • Prior to SL versions 1.19.1.81992, this function was limited to returning a maximum of 254 characters. SVC-470

Search JIRA for related Issues

Signature

function string llEscapeURL( string url );