Monday, November 08, 2010 at 12:01 AM.
system.verbs.apps.OAuth.getSignatureOld
on getSignature (adrparams, url, consumerSecret, tokenSecret="", method="GET") {
<<Changes
<<2/11/09; 7:50:52 PM by DW
<<Created.
<<http://www.hueniverse.com/hueniverse/2008/10/beginners-gui-1.html
local (s = "");
for adr in adrparams {
s = s + nameof (adr^) + "=" + string.urlencode (adr^) + "&"};
if sizeof (s) > 0 {
s = string.delete (s, sizeof (s), 1)}; //drop the trailing ampersand
s = method + "&" + string.urlencode (url) + "&" + string.urlencode (s);
<<wp.newtextobject (s, @scratchpad.sigparamstring); edit (@scratchpad.sigparamstring)
local (key = string.urlencode (consumerSecret) + "&" + string.urlencode (tokenSecret));
s = base64.encode (OAuth.getHmac (s, key), 255);
<<clipboard.putvalue (s)
<<wp.newtextobject (s, @scratchpad.sig); edit (@scratchpad.sig)
return (s)};
bundle { //test code
dialog.alert (getSignature (@scratchpad.requestparams, "http://term.ie/oauth/example/request_token.php", "secret"))}
This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.