LWP::Authen::OAuth2::AccessToken(3pm)

LWP::Authen::OAuth2::AccessToken3pm

Access tokens for oauth2.

Usage

This is a base class for signing API requests with OAuth2 access tokens. A subclass should override the "request" method with something that knows how to make a request, detect the need to try to refresh, and attmpts to do that. See lWP::Authen::OAuth2::AccessToken::Bearer for an example.

Subclasses of this one are not directly useful. Please see LWP::Authen::OAuth2 for the interface that you should be using.

Version

version 0.20

Methods

"from_ref"

Construct an access token from a hash reference. The default implementation merely blesses it as an object, defaulting the "create_time" field to the current time.

    my $access_token = $class->from_ref($data);

If you roll your own, be aware that the fields "refresh_token" and "_class" get used for purposes out of this class' control. Any other fields may be used. Please die fatally if you cannot construct an object.

"to_ref"

Construct an unblessed data structure to represent the object that can be serialized as JSON. The default implementation just creates a shallow copy and assumes there are no blessed subobjects.

"expires_time"

Estimate expiration time. Not always correct, due to transit delays, clock skew, etc.

"expires_in"

Estimate the seconds until expiration. Not always correct, due to transit delays, clock skew, etc.

"should_refresh"

Boolean saying whether a refresh should be emitted now.

"for_refresh"

Returns key/value pairs for $oauth2 (and eventually the service provider class) to use in trying to refresh.

"copy_refresh_from"

Pass in a previous access token, copy anything needed to refresh.

"request"

Make a request. If expiration is detected, refreshing by the best available method (if any).

    my $response = $access_token->request($oauth2, @request_for_lwp);

"_request"

Make a request with no retry logic, and return a response, and a flag for whether it is possible the access token is expired..

    my ($response, $try_refresh)
        = $access_token->_request($oauth2, @request_for_lwp);

THIS IS THE ONLY METHOD A SUBCLASS MUST OVERRIDE!

Releases

5 releases since Debian 9 (Stretch); the text changed 3 times.

  1. 9
  2. 10
  3. 11
  4. 12–13

Authors

•

Ben Tilly, <btilly at gmail.com>

•

Thomas Klausner <[email protected]>

From liblwp-authen-oauth2-perl 0.20-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.