Common use-cases should be streamlined:
-
I have a URL that I want to sign (given consumer key/secret, optional token/secret, optional nonce/timestamp).
-
I have a URL that I want to sign AND I want to see what the components (e.g. signature base string, etc.) are while it’s being signed (i.e. verbose signing).
-
I have a URL that I want to sign and I only want the signature.
-
I have a URL that I want to sign and I want something suitable to put in {the header, the querystring, XMPP}.
-
I want to make a query to an OAuth-enabled web service (with sensible errors, if available).
-
I want to host an OAuth-enabled web service.
-
I want to test my OAuth-enabled web service (i.e. test helpers)
Example applications for:
-
Ning
-
Fire Eagle
-
Google (blogger, contacts)
-
Twitter
-
YOS / YQL
-
Netflix
In addition to providing best practices of use, these can also be part of the pre-release checks to make sure that there have been no regressions.
Random TODOs:
-
finish CLI
-
sensible Exception hierarchy
-
Tokens as Modules
-
don’t tie to Net::HTTP
-
Take a look at Curb HTTP Verbs