Caution: It is almost never the right answer to just encode the entire URL. The point of URL-encoding is to encode reserved characters that might confuse the process reading and using the URL. It is similar in concept to escaping reserved characters to use them as a literal in regular expression. You however do not want to encode things that are reserved characters in a URL but are in fact being used for their intended purpose.
Let's look at this for a second. Our gmail account name is and our nice strong password is . This could potentially give WebParser fits, as : ? @ and = are all reserved characters with a special meaning on a URL.
Code: Select all
[MeasureName] Measure=String String=John:Doe [MeasurePass] Measure=String String=A?17b@ml=9 [MeasureWebParser] Measure=Plugin Plugin=WebParser URL=https://[&MeasureName:EncodeURL]:[&MeasurePass:EncodeURL]@gmail.google.com/gmail/feed/atom RegExp="(?siU)^(.*)$" DynamicVariables=1
So what we are doing is using two String measures to hold our name and password. Then we use those measures in the URL for WebParser using the [&Measure:EncodeURL] syntax. The "&" is how we dynamically use the value of a measure in the URL of a WebParser measure, and the ":EncodeURL" will encode those reserved characters in our name and password, while not interfering with the normal use of ":" and "@" in the URL.
What this is doing under the covers is: